Embedded Software Engineer
Marotta Controls Embedded Software Engineer
- Design, develop, and test embedded software including requirements analysis, architecture design and implementation.
- Write efficient, reliable, and maintainable code in languages such as C, C++, C#, and Python, and debug software issues using various tools and techniques.
- Develop and execute software verification and validation plans, including unit testing, integration testing, and system testing.
- Work closely with cross-functional teams, including hardware engineering, systems engineering and test engineering, to ensure software compatibility and system integration.
- Maintain accurate and up-to-date documentation, including software design documents, test plans, and user manuals, and manage software configuration using version control systems.
- Ensure compliance with industry standards and regulations including DO-178C, DO-254, and ARP475A.
- Bachelor’s degree in Computer Science, Computer Engineering, or Electrical Engineering
- Development experience using C for embedded application development
- Strong debugging and analysis skills
- Experience developing software using a formal Software Development Lifecycle process (SDLC)
- Strong documentation and writing skills
- Experience developing software tests and performing software verification
- Ability to obtain and maintain a security clearance
- Familiarity with microcontrollers, DSPs, and assembly language
- Experience debugging embedded systems (JTAG, emulators)
- Software architecture and design experience
- Experience in code optimization and profiling
- Familiarity with coding standards such as MISRA C
- Familiarity with code coverage and analysis tools such as Coverity and LDRA
- Ability to work closely with a team of engineers and technicians and comfortable in laboratory environment
- Depending on the level, we are looking between 2+ and 7+ years of experience
- While performing the duties of this job, the employee is frequently exposed to conditions typical of a manufacturing/machine shop environment, including, but not limited to fluids, fumes or airborne particles, moving mechanical parts, noise and vibration
- This job interacts both in a professional office environment and a manufacturing/machine shop environment. This role uses standard office equipment such as computers, phones, printers/scanners/copier machine, as well as environments inclusive of the appropriate eye, hearing and foot protection (as required).
- Temperature of work environment may be affected by outside/external temperatures, machining processes, etc.
- Some travel may be required for this position (5-10%)
- Full time position
- While performing the duties of this job, the employee is regularly required to talk and hear.
- The employee is frequently required to reach with hands and arms, and to use hands to finger, handle or feel.
- Specific vision abilities required by this job include close vision, distance vision, peripheral vision, depth perception and ability to adjust focus.
- The employee is regularly required to stand at length (7-8 hours, daily), walk consistently, stoop, bend, turn, balance, and/or crouch, and move about the facility.
- This position requires the ability to skillfully use measuring instruments, hand, and power tools
- The employee may be required to lift, push, pull and/or move items weighing up to 50 pounds