ENVIRONMENT:

A forward-thinking company specializing in cost-effective and innovative business solutions, based in KwaZulu-Natal, is seeking a Senior Developer to join their dynamic IT team. This role requires close collaboration with both the IT department and business stakeholders to design, develop, and implement high-quality systems that enhance business processes and operational efficiency. The ideal candidate will have a strong development background, preferably within the Microsoft technology stack, and extensive database expertise. They should be proficient in identifying and resolving low-level performance-related issues in both relational and document-based databases, with a preference for Microsoft SQL Server and MongoDB. This is an excellent opportunity for a seasoned developer who thrives in a collaborative environment and is passionate about building scalable, efficient, and high-performing software solutions.

DUTIES:

Technical:

  • Add continuous value by efficiently designing and delivering working software in line with on-going business requirements.
  • Accountable for ensuring that the optimal technical solutions are implemented.
  • Provide input to the architectural design of the company’s solutions.
  • Build effective software that facilitates the achievement of business objectives.
  • Maintain current knowledge of technology landscape and developments.
  • Keep abreast of cloud technologies and implement appropriate solutions to leverage these technologies where applicable.
  • Constantly review the systems for problem areas, devising improvements to the system that will allow for future enhancements with minimal impact.
  • Ensure that high technical standards are implemented and carried out in all coding practices and IT processes.
  • Assist in code reviews, ensuring that code adheres to high standards of efficiency and technical quality.
  • Ensure that quality is continually built into the systems and processes.
  • Contribute to a culture of continuous integration and deployment.
  • Assist the team when complex technical solutions inhibit delivery.
  • Suggest and discuss new software and techniques with the team.
  • React quickly to incidents, delegating to the team where necessary, and ensuring root cause analysis is carried out and implemented to prevent repeat occurrence of issues.
  • Contribute to the continual improvement of the existing code base through a disciplined process of refactoring where required to eliminate technical debt.
  • Create & maintain sufficient quality documentation of systems in line with agreed standards.

Operational:

  • Negotiate technical trade-offs with the IT Team with regards to the practicality of solutions vs. the cost and time required for those solutions.
  • Assume responsibility for the achievement of Sprint objectives.
  • Adhere to technology standards and communicate technical information to the Development Team.
  • Treat security as a first-class concern
  • Assist in the deployment of changes to production environments.

People:

  • Mentoring and guiding Junior Developers.
  • Engaging in healthy debate within the Development team, constructively calling each other out where appropriate.
  • Engage in a culture of accountability within the Development team.
  • Working effectively in an agile environment and ensuring that both the Company values and the values of agile are lived in the Development team.

REQUIREMENTS:

Knowledge, Skills:

  • Strong development background (preferably Microsoft stack)
  • Strong database knowledge with expertise in low level performance-related problems in both relational and document databases (preferably Microsoft SQL Server and MongoDB).
  • Thorough knowledge of web-based systems, preferably with extensive JavaScript, JavaScript framework, and .NET (varying frameworks) experience.
  • Knowledge of distributed systems and related solution architectures
  • Knowledge of message busses and event streaming (e.g., Kafka).
  • Knowledge of virtual environments and containerisation is beneficial.
  • Thorough understanding of Agile and scrum processes.
  • Pro-active with ability to constantly innovate and improve processes.
  • Thorough understanding of design patterns and concepts.
  • Thorough understanding of testing approaches (e.g., TDD, BDD)
  • Knowledge of automated testing and testing tools (e.g., Cypress).
  • Facilitation and collaboration skills.

Education / Experience:

  • Completion of an appropriate degree (Computer Science, Engineering, Information Systems, Information Technology or equivalent) is required.
  • At least 5 years’ relevant and appropriate previous experience is required.

ATTRIBUTES:

  • Excellent problem solving and decision-making skills.
  • Ability to mentor junior staff.
  • Excellent communication skills (written and verbal).
  • People-orientated; confident but diplomatic.
  • Future focused.
  • Passion for technology.
  • Quality focused.
  • Results driven.
  • Positive, can-do attitude.
  • Collaborative approach.
  • Customer orientation

While we would really like to respond to every application, should you not be contacted for this position within 10 working days please consider your application unsuccessful.

COMMENTS:

When applying for jobs, ensure that you have the minimum job requirements. Only SA Citizens will be considered for this role. If you are not in the mentioned location of any of the jobs, please note your relocation plans in all applications for jobs and correspondence. Apply here [URL Removed] e-mail a Word copy of your CV to [Email Address Removed] and mention the reference number of the job.

Desired Skills:

  • Senior
  • Developer
  • C

Learn more/Apply for this position