Job description
Senior Software Engineer - Gauteng Permanent | Engineering Department
A leading engineering and technology organisation is seeking an experienced Senior Software Engineer to perform software engineering activities across new product development and ongoing product support. The role requires strong embedded software expertise, architectural design capability, and full life-cycle engineering experience.
Key Responsibilities
- Participate in engineering meetings, reviews, and change-control processes
- Contribute to system engineering and product development standards
- Decompose system requirements into software requirements, architecture, and design
- Design new software architectures and update existing designs
- Produce documentation and models for review and approval
- Lead software development activities and resolve detailed design issues
- Develop software according to coding standards and participate in code reviews
- Validate requirements, architecture, and design through prototyping and modelling
- Generate test cases, perform engineering testing, and maintain traceability
- Ensure configuration management compliance and maintain documentation integrity
- Support internal teams (production, marketing, project office, R&D)
- Provide technical support to external clients during development and product utilisation
Minimum Requirements
- Bachelor's degree in Electronic or Computer Engineering
- 10+ years software/electronic engineering experience
- Embedded software R&D experience (non-negotiable)
- Strong embedded development experience in C or C++
- Full product development life-cycle experience
Beneficial Experience
- Honours/Master's degree in Electronic/Computer Engineering
- Knowledge of collision warning/detection technologies
- Wireless communication technologies
- Multi-disciplinary engineering environments
- Mining industry experience
- Systems engineering exposure
- Experience with Git, Jira, Polarion, ROS2
Competencies
- Self-motivated and a strong self-starter
- Excellent problem-solving and analytical ability
- Strong communication skills
- Ability to manage complex systems and multiple tasks
- Willingness to stay updated with new technologies
- Ability to build strong working relationships
- Willingness to travel when required
#J-18808-Ljbffr