Software System Architect
We are representing our client, a technology conglomerate to look for an experienced Software System Architect to complement the existing team. The successful candidate will lead the architecture, design and development of embedded software, firmware and application-level solutions for high-performance security products.
Responsibilities
- Define and own the end-to-end software architecture for embedded and application-level systems.
- Translate product requirements into scalable, secure, maintainable and testable software architectures.
- Define system interfaces, integration strategies and technical roadmaps across hardware and software domains.
- Develop architectural specifications, design standards and technical implementation guidelines.
- Evaluate technologies and design options to balance performance, security, cost and maintainability.
- Design, develop, integrate and validate embedded software and firmware components.
- Customize and maintain embedded Linux platforms (e.g. Yocto and PetaLinux) to meet product requirements.
- Lead the design and development of application-level software and supporting tools where required.
- Oversee system integration, performance tuning and reliability testing across hardware and software components.
- Support software release management and preparation of production-ready firmware and software builds.
- Lead and mentor software engineers throughout design, development, integration and testing activities.
- Conduct architecture, design, code and test reviews to ensure technical quality and compliance with standards.
- Drive adoption of best practices in secure coding, software engineering, DevOps and continuous integration.
- Provide technical leadership in troubleshooting complex system issues and resolving architectural challenges.
- Guide technical decision-making and risk management throughout the product lifecycle.
- Collaborate with product managers, project managers, project technical leads, hardware engineers and external vendors to align technical solutions with business objectives and project timelines.
- Support customer engagements, technical discussions and solution reviews where required.
- provide technical support for product qualification, certification, accreditation and compliance activities.
- Produce and maintain architecture documents, design specifications, user guides and engineering reports.
- Ensure compliance with software development processes, quality standards and cybersecurity requirements.
- Contribute to continuous improvement of engineering practices, tools and development frameworks.
Requirements
- Minimum 5 years of experience in embedded systems and software design and development, including proven experience leading embedded software architecture, technical design and system integration for complex embedded products.
- Strong proficiency in C/C++, Rust, Python and Bash scripting.
- Strong experience with embedded Linux platforms, with exposure to RTOS or bare-metal systems being advantageous.
- Experience with OS customization, kernel configuration and build systems such as Yocto or PetaLinux is preferred.
- Strong understanding of hardware-software integration, system-level debugging and performance optimization.
- Good understanding of networking concepts, including Ethernet Layer 2, IP/TCP/UDP, routing, switching, network programming and network security fundamentals.
- Familiarity with cloud computing concepts and software deployment environments.
- Experience with DevOps practices, CI/CD pipelines and toolchains such as GitLab and Docker.
- Strong analytical, problem-solving and technical leadership skills.
- Excellent communication skills with the ability to influence technical decisions and collaborate effectively with cross-functional teams.