Job DescriptionAre you a motivated and talented individual with a passion for embedded systems and low-level programming, but don't have a traditional background in computer science or engineering?
BAE Systems is seeking software engineers with 2+ years of experience to join our team and contribute to designing, developing, and maintaining embedded software and firmware for mission-critical systems.
Engineers at our Endicott NY / Austin TX offices support the Controls & Avionics Solutions (CAS) Business Area.
https://www.baesystems.com/en-us/who-we-are/electronic-systems/controls-and-avionics-solutions
Controls and Avionics Solutions provides flight and mission-critical products to more than 170 commercial and military customers around the world. CAS products include flight control systems, full authority digital engine controls (FADEC), autonomous flight systems, power management systems, flight deck systems, control sticks, cabin management systems, intermediate and depot level test stands, and mission systems for the world's most prominent commercial and military aircraft manufacturers.
In this role, you will be an integrated team member working at the intersection of hardware and software. You will collaborate closely with Systems, Hardware, and Test engineers to develop software that interacts directly with physical components. Your work will span one or more phases of Requirements Development, Low-Level Design, Implementation, Hardware-in-the-Loop (HITL) Integration, and System Testing. You will prepare design and project artifacts intended to be used within complex programs in accordance with established safety-critical processes. We will provide you opportunities to learn, leverage our current technologies, incorporate new embedded architectures, and be a leader in our engineering organization.
As part of our interview and selection process for this position, candidates will be required to complete a coding assessment.
This position will be posted for at least 5 calendar days. The posting will remain active until the position is filled, or a qualified pool of candidates is identified.Required Skills and Education- 2+ years experience with embedded software or firmware development, testing, and validation in any programming language or environment.
- Understanding of software engineering principles, specifically as they apply to resource-constrained environments (CPU, Memory, Power).
- Experience with software and systems engineering processes, methodologies, and tools.
- Experience performing software testing, validation, and verification activities, including the use of debuggers or hardware probes.
- Strong problem-solving and analytical skills, with an ability to troubleshoot issues at the hardware-software interface.
Preferred Skills and Education- Ability to obtain a Secret Clearance.
- Experience with real-time operating systems (RTOS) and embedded development lifecycles.
- Proficiency in C/C++ (for embedded targets) and Python (for scripting/automation).
- Experience with Windows/Linux OS and cross-compilation toolchains.
- Familiarity with communication protocols (e.g., I2C, SPI, UART, CAN, ARINC 429, or MIL-STD-1553).
- Experience with Continuous Integration (CI) tools, GIT, Jira, and Confluence.
- Agile Development experience.
- Experience designing and implementing real-time software algorithms, interrupt service routines (ISRs), or device drivers.