The Software Engineer is responsible for designing, developing, and maintaining software solutions for the organisation’s SaaS applications. This role requires strong technical expertise in software development, performance optimisation, security, and collaboration with cross-functional teams. The Software Engineer will contribute to architectural decisions, ensure compliance with industry standards, and deliver high-quality software solutions aligned with business objectives.
Duration of Contract: Permanent
Location: Hybrid work
Salary: +/- R900k PLUS BENEFITS
Reporting Manager: CTO
Direct Reports: N/A
Indirect Reports: N/A
Key Responsibilities:
A. Software Development & Technical Execution
Design, develop, and maintain robust, scalable, and secure SaaS
Write clean, maintainable, and efficient code following best practices
Conduct code reviews, debugging, and testing to ensure high-quality software
Implement new features and enhancements based on business requirements
Develop and maintain automated tests to ensure software quality
KPI: Deliver high-quality code with a 90%+ adherence to best practices
KPI: Complete all assigned development tasks within sprint timelines
B. Architecture and Design
Contribute to the architectural design and development of the SaaS applications
Ensure software architecture is scalable, maintainable, and follows industry standards
Collaborate with architects and engineers to develop robust technical solutions
KPI: Ensure at least 95% system uptime and performance
KPI: Deliver at least 2 architectural enhancements per quarter
C. Performance Optimisation
Identify and resolve performance bottlenecks in the applications
Optimise code and database queries for maximum efficiency
Implement caching and other performance-enhancing strategies
KPI: Improve application response times by at least 15%
KPI: Conduct quarterly performance reviews and optimisations
D. Security & Compliance
Implement security best practices in software development
Conduct regular security assessments and ensure compliance with industry regulations (e.g., GDPR, HIPAA)
Perform code reviews to identify security vulnerabilities
KPI: Maintain zero critical security vulnerabilities in production
KPI: Ensure 100% compliance with industry security standards
E. Collaboration & Agile Development
Work closely with product managers, designers, and other engineers to deliver high-quality software
Participate in agile development processes, including sprint planning and retrospectives
Communicate project status, challenges, and solutions to the team
KPI: Actively participate in at least 90% of agile ceremonies
KPI: Ensure 100% completion of assigned sprint tasks
F. Continuous Improvement & Innovation
Stay up to date with emerging technologies and industry trends
Continuously improve development processes and workflows
Advocate for best practices in software development and knowledge sharing
KPI: Propose and implement at least 2 process improvements per quarter
KPI: Contribute to internal knowledge-sharing initiatives
Qualifications & Experience:
4-5 years of software development experience in a professional environment
Bachelor’s degree in computer science, Software Engineering, or a related field
Proven experience in SaaS application development
Proficiency in programming languages such as PHP, GoLang, Python, JavaScript, or similar
Experience with front-end frameworks (Vue.js, React, Angular) and back-end frameworks (Symfony, FastAPI, Django, Node.js, etc.)
Proficiency with database technologies (SQL, NoSQL) and cloud platforms (AWS, Azure, Google Cloud)
Strong understanding of software architecture, design patterns, and best practices
Excellent problem-solving and communication skills
Preferred Skills:
Certifications such as AWS Certified Developer, Google Professional Cloud Developer, or equivalent
Experience with containerisation and orchestration tools (Docker, Kubernetes)
Familiarity with DevOps practices and CI/CD tools (Jenkins, Bitbucket Pipelines)
Knowledge of microservices architecture and RESTful API design
Experience with Agile development methodologies
Proven ability to manage multiple projects simultaneously
Proficient in analysing, optimising, and modernising legacy code and business rules to enhance performance and maintainability