Senior Software Developer

4 days ago


Pretoria South Africa Agile Bridge Full time R1 200 000 - R2 400 000 per year

Job purpose:

A Senior Software Engineer is an experienced professional responsible for overseeing software development projects, writing clean and efficient code, and providing technical leadership to a team of engineers. In this role, you will assume ownership in the design, development, and delivery of high-quality products, systems, and services that exceed customer expectations. You'll proactively share your knowledge of specific technical solutions and business processes within your area of responsibility. This includes developing high-quality software, identifying and executing tasks within the software development life cycle, and reviewing and debugging code to ensure the quality and functionality of software solutions. Your proven ability to handle scoping, expectation management, architecture, design, and client management, combined with your experience in seamlessly picking up new frameworks and technologies, positions you to provide technical guidance, mentorship, and project management expertise, ensuring the successful delivery of software projects.

Key accountabilities:

Technical Leadership:

  • Serve as a technical lead contributing to and directing the efforts of development teams, including internal and external team members.
  • Lead the design, development, and implementation of software solutions, ensuring adherence to technical specifications, requirements, and architectural principles.
  • Architect scalable, reliable, and maintainable software systems, considering performance, security, and usability aspects.
  • Provide deep technical expertise that drives colleague engagement, clarity, and instills a culture of innovation and execution.
  • Mentor and coach junior members of the development team to allow for skill and knowledge development through advice, coaching, and training opportunities.

Software Development:

  • Possess and apply a broad knowledge of principles, practices, and procedures of software development to the completion of complex assignments.
  • Design, develop, modify, implement, and support software components anywhere in the software stack.
  • Write clean, efficient, and well-documented code in various programming languages, frameworks, and technologies.
  • Develop high-quality software, including requirements, design, code, documentation, and testing.
  • Implement software testing strategies, including unit testing, integration testing, and automated testing, to ensure quality and reliability of software products.
  • Optimize software performance, troubleshoot issues, and address technical debt through refactoring, performance tuning, and code optimization techniques.
  • Automate tasks through appropriate tools and scripting.

Quality Assurance and Documentation:

  • Conduct code reviews, mentor junior developers, and provide constructive feedback to improve code quality and maintainability.
  • Ensure all tasks are completed to the required quality standards.
  • Maintain relevant documentation to describe logic, coding/configuration, testing, and changes where applicable.

Project Management:

  • Successfully develop, deliver, and maintain high-quality software solutions that meet customer expectations.
  • Evaluate third-party libraries, frameworks, and tools for integration into software projects, considering factors such as compatibility, performance, and licensing.
  • Contribute to the development and enforcement of coding standards, development processes, and software engineering best practices within the organization.
  • Participate in Agile or Scrum ceremonies, including sprint planning, daily stand-ups, and retrospectives, to track progress and ensure alignment with project goals.

Collaboration and Stakeholder Engagement:

  • Collaborate with product managers, business analysts, and stakeholders to define project scope, objectives, and deliverables, and translate business requirements into technical designs.
  • Work with product managers early on to shape product definition so that it can be built in a flexible, extensible, and robust way.
  • Partner effectively with all team members to deliver against commitments.
  • Work in close partnership with cross-functional teams and management to ensure alignment with project goals.
  • Communicate effectively with team members, stakeholders, and leadership to provide project updates, address concerns, and escalate issues as needed.

Mentorship

  • Identify training needs in your team and suggest training interventions, whether it be an Udemy course, Pluralsight, or mentors within the team.
  • Offer mentorship and guidance to less experienced developers in your Team.
  • Commitment to team success and positive team dynamics

Key performance indicators:

  • Delivers software projects within the agreed-upon deadlines, maintaining alignment with the defined scope and quality expectations.
  • Proactively introduces process improvements and adopts new technologies that enhance team efficiency or product performance.
  • Consistently delivers high-quality software that meets or exceeds customer expectations, with minimal post-release issues.
  • Maintains the performance and reliability of systems and applications, with a focus on minimizing downtime and performance-related incidents.
  • Actively mentors and coaches junior team members, contributing to their professional growth and the overall development of the team.
  • Focus on sound development concepts and patterns such as object/service orientated architecture, refactoring, and separation of concerns.
  • Comply with project plans and industry standards
  • Code Coverage provided on the code developed

Skills, know-how and experience:

  • Recognized as a technology expert in their field.
  • Exceptional complex problem-solving skills, with a flair for innovative and creative thinking.
  • Strong focus on customer needs and satisfaction.
  • Has the ability to work independently.
  • Skilled in interpreting and gathering user requirements, and translating them into technical specifications or code.
  • Extensive knowledge of modern IT operations, including Cloud, Social, Mobility, IoT, Big Data, and more.
  • Deep understanding of architectural best practices and patterns such as Microservices, CQRS, Event Sourcing, Domain-Driven Design, Clean Architecture.
  • Proven experience in applying Test-Driven Development (TDD) methodologies.
  • Proficient in multiple relevant programming languages, frameworks, and databases.

· Adaptable and open to embracing significant changes in technology or work environments.

Essential:

  • Bachelor's Degree/BSc Degree in appropriate field of study or equivalent work experience
  • 7 + years of professional or other practical experience

Experience in the following technologies:

  • Databases: SQL, MySQL, MongoDB
  • Azure: Azure DevOps, Azure Pipelines,
  • Frameworks: .NET, .NET Core, Entity Framework
  • Backend Tech: C#
  • Frontend Tech: Angular, React

Beneficial

  • Experience in the Agile methodology of developing software.
  • Working with Agile Teams and successfully delivering Agile-based software projects
  • Experience working with DevOps, Git, JIRA, Jenkins, Automated Build Servers

Values and Competencies

  • Get stuff done: completing tasks, and contributing to the deliverables of the team to ensure we deliver high quality products
  • Be the best you can be: investing time in learning and sharpening your skills. Teaching and sharing your unique skills with the rest of the team
  • Do the right thing: we build a culture of mutual respect and collaboration, admit to mistakes and learn from them
  • Servicing the customer: at the forefront of providing service excellence and customer satisfaction
  • Solve together: we conduct ourselves in such a way that we work harder, cooperate and be supportive of one another and contribute to the team spirit
  • Build a bridge: progress with what you have and solve a challenge
  • Add value: to tasks, interactions with colleagues and customer interactions
  • Have fun we enjoy the work we do and the people that we are doing it

Direct reports and/or Stakeholders

Influence, collaborate and co-ordinate with:

  • Product Owner
  • Developers
  • Managers


  • Johannesburg, South Africa iDbase Software Full time

    About the Role We are seeking an experienced Senior Software Engineer (Java) to join our innovative technology team. You will design, build, and maintain scalable enterprise-grade applications using Java and complementary technologies. This role emphasizes cloud-native development, microservices architecture, and secure, high-performance coding practices. It...


  • Johannesburg, South Africa iDbase Software Full time

    About the Role We are seeking an experienced Senior Software Engineer (.NET & Azure) to join our innovative technology team. You will design, build, and maintain scalable enterprise-grade applications leveraging modern .NET technologies and Microsoft Azure cloud services. This role emphasizes cloud-native development, microservices architecture, and secure,...


  • Johannesburg, South Africa iDbase Software Full time

    About the Role We are seeking a highly experienced Senior Java Developer to join our team. You will design, develop, and maintain scalable enterprise-grade applications using Java and modern frameworks. This role emphasizes cloud-native development, microservices architecture, and high-performance, secure coding practices. It is ideal for a seasoned engineer...


  • Port Elizabeth, South Africa Performit Personnel Full time

    SENIOR SOFTWARE DEVELOPER Office based 5-10 YEARS EXPERIENCE The purpose of this position is to develop solutions by guiding development of program specifications, overseeing testing efforts and leading programmers. A Senior Developer is responsible for all development related activities within the organisation and the quality of the solutions and code...


  • Port Elizabeth, South Africa Headhunters Full time

    Our Client, a prominent name in the IT Software Development Industry in Port Elizabeth, is seeking to employ a Senior Software Developer, to their team based in Walmer, Port Elizabeth. An awesome career opportunity awaits with this employer of choice! Requirements: National Diploma in Information Technologies or Equivalent. 7-10 years’ experience....

  • Software Developer

    4 days ago


    Pretoria, , South Africa Agile Bridge Full time R250 000 - R500 000 per year

    Job purpose: As a Software Engineer, you will work independently and collaboratively within a team to develop software and manage subsections of systems. You will design solutions and modules for existing systems, demonstrating a strong command of software development fundamentals, coding principles, stakeholder engagement, and troubleshooting.Your...


  • Paarl, South Africa Capital H Staffing and Advisory Solutions Full time

    Our client develops specialised business-information software for farms, wineries, and related industries. They seek a self-motivated Senior Developer with strong work ethic and time-management skills. The position is based in Paarl and reports to the team manager. Main duties: Design, develop, test, and deploy high-quality software solutions. Collaborate...


  • Johannesburg, South Africa iDbase Software Full time

    About the Role We are looking for an experienced and highly skilled Senior Front-End Developer to join our innovative product team. You will work within a cross-functional Agile environment, designing, building, and optimizing enterprise-scale frontend applications. This role places strong emphasis on modern web architecture, including micro-frontends,...


  • Sandton, South Africa Boardroom Appointments Full time R900 000 - R1 200 000 per year

    Software Developer II - (4 x Senior Java (Spring Developers - Security Tribe[Vigie]][8 Month Contract]Realize the detailed design through:ProgrammingConfigurationProvide guidance and mentoring to other software developers.

  • Software Engineer

    1 week ago


    Johannesburg, South Africa iDbase Software Full time

    About the Role We are seeking an experienced Software Engineer (.NET & AWS) to join our innovative technology team. You will design, build, and maintain scalable enterprise-grade applications, leveraging modern .NET technologies and AWS cloud services. This role emphasizes cloud-native development, microservices architecture, and secure, high-performance...