HomeSearch › Job

Senior Software Developer

ATS Client

Pretoria, Gauteng, ZA · senior

Job at a glance

Pretoria, Gauteng, ZA
Location
Senior
Seniority
ATS Client
Employer

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

Search all live jobs — free, no account →