Summary
Job Description
As a Staff Embedded Software Engineer you will be at the forefront of creating, developing, and testing the software that drives and simulates our flight systems. Your role involves close collaboration with fellow Castelion engineers across software and hardware domains to implement and debug software across the entire technology stack from applications and operating systems to networking, firmware, and simulation, ensuring complete mission success. We seek intelligent, collaborative, and driven engineers of all levels who are passionate about problem-solving and eager to contribute to an extraordinary mission. If you thrive in challenging environments and are excited by the prospect of making a tangible impact, we want to hear from you.
Responsibilities
- Autonomous Systems: Design and implement reliable autonomous software systems, along with the simulations required to validate their precision and dependability.
- Comprehensive Software Development: Manage the entire software development process, from initial design, prototyping, and testing, to final integration and deployment for mission-critical applications.
- System Testing: Evaluate test outcomes and troubleshoot issues necessitating detailed investigations, including hands-on integration and debugging of hardware/software systems. Develop tools to facilitate testing across various environments: virtualized hardware, real hardware-in-the-loop, and vehicle-in-the-loop testing.
- Collaboration: Partner with multidisciplinary engineering teams to brainstorm, design, and develop next-generation hypersonic missile capabilities, including advanced guidance algorithms and integrated seeker image processing.
- Project Leadership: Lead major projects that propel Castelion's mission forward, ensuring alignment with overall objectives and occasionally traveling to launch and customer sites for testing and operations.
- Enhance Standards and Practices: Continuously improve software standards and best practices within the software team, fostering an environment of ongoing improvement and innovation.
Basic Qualifications
- Educational Background: Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, Mathematics, or a related STEM field, or equivalent practical experience.
- Experience: Typically requires 8+ years of professional software engineering experience, or equivalent hands-on experience through industry work, advanced research, or significant technical contributions.
- Technical Proficiency: Deep experience with systems programming in languages such as C++, Python, or Rust, and strong proficiency in Linux-based development environments.Experience may include work with low-level systems such as Linux kernel development, hardware interfaces, or driver development (e.g., UART, I2C, or similar peripherals), with demonstrated ability to architect systems, make cross-disciplinary technical decisions, and lead development of complex, integrated software and hardware systems.
Preferred Skills and Experience
- Programming Expertise: Proven proficiency in C++, Rust, or similar systems programming languages.
- System Experience: Practical experience with real-time embedded systems or distributed computing environments in Linux-based systems, including developing high-quality Linux-based C++ software for common processors and microcontrollers (e.g., PowerPC, x86, ARM).
- Technical Skills: Proficiency in Linux, including Bash shell scripting, network troubleshooting, and performance analysis (strace, ftrace, etc.), with strong skills in debugging, performance optimization, and unit testing.
- System Knowledge: Comprehensive understanding of computer architecture and networking protocols (TCP, UDP, etc.).
- Problem-Solving: Innovative problem-solving approach using first-principles thinking, including developing prototypes to validate key design concepts and quantify technical constraints.
Leadership Qualities
- Bias to Action and Creative Problem Solving. Desire and experience questioning assumptions in ways that lead to break through ideas that are ultimately implemented. Successfully bring in applicable processes/concepts/materials from other industries to achieve efficiency gains. Ability to personally resolve minor issues in development without requiring significant support.
- High Commitment, High Initiative. A successful candidate will have a genuine passion for Castelion's mission and consistently look for ways to contribute to the company's technical goals and prevent hardware blockers. Ability to work in a fast paced, autonomously driven, and demanding atmosphere. Strong sense of accountability and integrity.
- Clear Communicator. Proactively communicates blockers. Trusted in previous roles to be voice of company with regulators, suppliers, gate keepers and customers. Capable of tactfully managing relationships with stakeholders to achieve company-desired outcomes without compromising relationships. Emails, IMs and verbal interactions are logical, drive clarity, and detailed enough to eliminate ambiguity.
About Castelion
Similar Jobs
Weapons Integration Engineer (Multiple Levels)
Torrance, California, United States • Today
As a Weapons Integration Engineer you will be part of the team that ensures Castelion weapon systems integrate seamlessly with...
Tooling, Automation & Controls Manager
Torrance, California, United States • Today
We are seeking a Manager of Tooling, Automation & Controls to lead the design, development, deployment, and sustainment of advanced...
Technical Recruiter
Rio Rancho, New Mexico, United States • Today
As a Technical Recruiter at Castelion, you will be a strategic partner to our hiring managers, driving the end-to-end recruitment...