About the job:
HALCON is a regional and international leader that offers next-generation Weapons Systems and Robotics Expertise to meet the challenges of a rapidly changing world. HALCON has developed in-house expertise across the entire value chain for gravity-release bomb guidance systems. This includes design, development, testing, manufacturing and assembly. Our end-to-end capabilities ensure exceptional quality and competitive pricing. As well, we are faster and more flexible in meeting customer requirements.
Job Summary:
The Principal Software Engineer should be a well-experienced professional in the field of software engineering and be skilled in guiding a team towards technical solutions. Leading a team in software system and subsystem design, coding, evaluation and testing and reporting. Exposure to classification and certification of software.
Key Accountabilities:
- Must show very high level of proficiency and independence in software language(s), e.g. Embedded C, C#, with a deep understanding the language’s complexities.
- Be able to cater for the intricacies of memory management, pointers, interrupt handling, multi-threading & multi-processing, language frameworks, etc.
- Very proficient and independent at various communication protocols.
- Very knowledgeable of, and experienced in, the application of technical specification practices, especially considering international standards, practices, and certification, e.g. MIL-STDs, IEC/IEEE standards, RTCA standards (e.g. DO-178C), Unified Modelling Language (UML), System Modelling Language (SysML), etc.
- Set an example by timeously delivering working code of high quality that satisfies requirements, and which is in compliance with company software quality and coding standards, configuration management practices, etc.
- Seek, propose and enforce improvements in software quality processes, tools and efficiency.
- Lead others to improve their software quality by, for example, code reviews and performing exhaustive unit testing that minimises occurrence of defects.
- Provide leadership in the generation and efficient review of engineering software models and artefacts.
- Organise and chair design reviews, and provide constructive inputs.
- Propose, obtain buy-in and implement sound software system engineering practices.
- Set high standards in the development of Software Requirement Management, innovative Software Designs that adhere to industry best practices, Interface Control Specifications, etc.
- Ensure the generation of MBSE artefacts through the utilisation of a model-based approach and tools, with (amongst others) static and behavioural software models.
- Be able to provide guidance to juniors regarding specification practices, coding and coding standards, testing and verification practices and methods, software integration and configuration management, etc.
- Provide inputs to management regarding future software requirements and needs.
- Assist in the generation of a technology roadmap that includes resources and software development tools.
- Provide guidance in terms of new software architecture, as well as improvements in the existing architecture through software refactoring and identification of candidate components for sharing and re-use.
Experience & Education Qualifications:
- Minimum: 15 years’ experience in the software engineering domain. At least 5 years’ experience in the certification/classification methodology of software.
- Preferred: 15+ years’ experience in the software engineering domain. 8+ years’ experience in the certification/classification methodology of software.
- Minimum: Electronic/Software Eng. Degree (Bachelor). Knowledge of software subsystem design with application in the precision guided munition domain.
- Preferred: Electronic/Software Eng. Degree (Honours or Masters). 8+ years’ experience in software subsystem design with application in the precision guided munition domain.