Develop & Maintain Mission-Critical Systems: Design, implement, and maintain software solutions for safety-critical applications, ensuring compliance with industry standards for reliability, safety, and performance.
Coding: Work with a wide range of programming languages and tools (e.g., C++, Python, Java, Rust, GoLang, etc.) depending on project requirements, adapting quickly to new technologies as needed.
Software Safety & Security Focus: Apply software safety and security best practices in your coding, testing, and development processes.
Team Leadership & Cross-Functional Collaboration: Lead and guide software development teams, providing technical mentorship to junior developers and coordinating project deliverables, whilst working closely with various stakeholders, architects, and other software developers to design, implement and deploy mission-critical systems. Foster best practices in software development methodologies across the team.
Testing & Validation: Develop comprehensive test plans & test cases to ensure software integrity through unit testing, integration testing, and system-level validation, etc. Participate in code reviews and static code analysis to identify and mitigate potential risks early in the development cycle.
Deployment: Perform ICIT (Installation, Check-out, Integration and Testing) and system validation in the production environment.
Troubleshooting & Debugging: Proactively identify and resolve performance, safety, and reliability issues in both development and production environments
Documentation & Reporting: Maintain thorough documentation for code, processes, and test results, ensuring all compliance and audit requirements are met.