Overview: 

We are looking to hire an experienced Senior Developer to head up our development team. In this role, you will be responsible for overseeing the development and implementation of new systems through your teams. You may also be required to update existing software and conduct feasibility studies on company systems. While your role will be managerial in nature, you will also be expected to code applications, create reports, and mentor the junior developers. To ensure success as a senior software developer, you should have a high-level managerial skills, in-depth knowledge of programming languages, and outstanding project management skills. The Senior Software Developer needs to know the skills and aptitude of junior staff and assign tasks accordingly.

Responsibilities:

  • Performing coding assignments.
  • Reviewing code work for accuracy and functionality.
  • Creating and implementing design plans.
  • Analyzing code segments regularly.
  • Delegating tasks to team members.
  • Keeping up-to-date with industry trends and technology developments.
  • Code and test program modules that meet design specifications.
  • Maintain, tune and repair applications in order to keep them performing according to technical and functional specifications.
  • Identify configuration changes to applications so that they meet business process requirements.
  • Read, understand and effectively implement application specifications into database design.
  • Manage and/or provide guidance to clients.
  • Identify system deficiencies and implement effective solutions.
  • Create well designed, reusable objects.
  • Meet with development managers to discuss software projects.
  • Conduct feasibility studies for upgraded software systems.
  • Design new software programs, websites, and applications.
  • Assign tasks to junior developers such as coding, testing, debugging, and analytics.
  • Writing advanced programming code.
  • Reviewing updated software systems.
  • Managing project timelines and tasks.
  • Writing development reports.
  • Creating technical documents for new software programs.
  • Training staff on software use.

Experience/Knowledge:

  • BSc in Computer Science Degree, other related discipline or equivalent.
  • 10 Years’ experience typical for someone at full proficiency for this role.
  • 3-5 years’ minimum experience to be fully proficient for this role.

Abilities and Skills:

  • Django.
  • Python.
  • SQL.
  • Linux.
  • Source Control.
  • Testing Framework (PyTest).
  • Frontend Framework (Svelte, React, Knockout)
  • Experience working in Small/Large Teams.
  • Celery.
  • NGINX,UWSGI.

Competencies:

  • Team-building skills with technical and non-technical staff.
  • The ideal candidate must display the following critical competencies and personal traits:
  • Attention to detail.
  • Deadline driven, accountable, thorough and professional.
  • Proactive, Efficient and Focused.
  • Responsible, self-managed and delivery focused.
  • Ability to write code of a consistently high quality.
  • Reliable, trustworthy and a team player.
  • Experience working both independently and, in a team, -oriented, collaborative environment.
  • Flexible with proven ability to conform to shifting priorities, demands and timelines through analytical and problem-solving capabilities.
  • Technically competent with various software programs, including but not limited to Microsoft Office (Word, Excel, PowerPoint, Visio), Microsoft Projects, ServiceNow, Smartsheet and Lucid Chart.
  • Adept at conducting research into project-related issues and products.
  • Must be able to learn, understand and apply new technologies.
  • Support diverse and inclusive work environment.

Disclaimer: 

The above information on this role profile has been designed to indicate the general nature and level of work performed by employees within the specified role. It is not designed to contain or be interpreted as a comprehensive inventory of all duties, responsibilities, and qualifications required of employees assigned in this job.