Rapita Systems, Inc. is seeking to fill a Senior Software Engineer position with a talented and highly motivated individual with a background in embedded systems. Based in Novi, Michigan (USA), the successful applicant will play a key role in the latest technology for development and verification of global aerospace and automotive real-time embedded systems. The position requires intelligence, creativity, knowledge, hard work and commitment.
We are specifically looking for interest or experience in embedded systems with multicore processors for safety critical systems in the aerospace and automotive industries. Successful candidate will work on full lifecycle development, multicore timing analysis, and complex software projects, with a strong element of research and innovation.
This position will directly report to the Engineering Manager - Aerospace Services.
- Software engineering, development and testing of safety critical software using a variety of languages and technologies
- Multicore processor analysis, software timing analysis and embedded systems integration
- Technology research, bringing innovative ideas and seeing them through to completion
- Delivery of services and analysis of multicore architectures
- Working with major aerospace customers and partners to deliver high quality results using the latest CPU technologies
- Support projects throughout the product life cycle
- Using initiative to learn independently, question assumptions and challenge results
- Interface regularly with other engineering disciplines, program leadership and customers to deliver high quality products
- Train and mentor less experienced engineers in hardware, software, system troubleshooting and test processes
- Other tasks as necessary; Rapita is a small, dynamic company – we look for staff who are can adapt to take on new challenges
Required skills and experience
- Bachelor’s degree in in computer science, real-time systems, computer engineering, electronics or a related field and 10 years of relevant experience or an Advanced degree in the appropriate discipline and 7 years of relevant experience
- A strong software background and excellent programming skills
- Experience with requirements writing and review - precise requirements language, testability, traceability analyses
- The desire and ability to solve complex technical problems
- Knowledge of computer architecture concepts such as cache organization, DMA, MMU, Interrupt driven I/O
- Organizational ability and a positive "can do" attitude
- Effective written and verbal communication skills
- Experience of multicore processors, especially architectural features, embedded programming and interfacing
- Understanding and experience of real-time or embedded software (e.g. ARM, PowerPC etc.)
- Experience with real-time operating systems such as Integrity, VxWorks, uC/OS, etc. and/or hypervisors
- Experience with structural coverage analysis tools (Rapita, LDRA, VectorCast)
- GPU experience (e.g. NVIDIA, AMD, CUDA, Vulkan, OpenGL)
- Skills in some of the following: Assembly, C, C++, Ada, Java, Python. The ability to learn new technologies is far more important than knowing specific languages
- Skilled in using Linux or other Unix-like OS
- Knowledge of ARINC 653 development standard.
- Search/optimization algorithms (e.g. genetic programming)
- Aerospace or automotive experience, especially DO-178C, ISO 26262 or IEC 61508
- Ability to multitask effectively on several active projects
- A research background, innovation
This is a full-time role and only USA Citizens will be considered.
Why join Rapita?
Rapita Systems, Inc. is a great place to work with a strong, friendly team, flexible working times, vacation, 10 paid holidays, 401k match, medical, dental, vision, ST/LT disability, an innovative ethos and culture, and an open, flexible working environment.
Rapita offers a competitive remuneration package commensurate with experience, and with flexible working time.
To apply, send us a cover letter and resume at firstname.lastname@example.org(electronic PDF submissions only). Strictly no recruitment agencies. We look forward to hearing from you.
Nothing in this job description restricts management’s right to assign or reassign duties and responsibilities to this job at any time. This description reflects management’s assignment of essential functions; it does not proscribe or restrict the tasks that may be assigned; or this job description is subject to change at any time.