Job Description
Job Description
Principal Software Engineer Minneapolis, MN 55421
Schedule: 1st Shift, 08:00AM-05:30 PM
Summary:
- We have multiple openings for individuals with experience and a passion for real-time, embedded software development.
- The Principal Software Engineer plans, leads, and performs a variety of tasks across the areas of software requirements analysis, software architecture and design, implementation (code and unit test), documentation, hardware-software integration, troubleshooting, problem solving, and software verification testing.
- The Principal Software Engineer: Plans, leads, and executes efforts to architect, design, develop, maintain, upgrade, port, and verify/qualify embedded product software and/or product support software to enhance, implement and support project/system functionality.
- Mentors less experienced software engineers to help develop their software development and test capabilities and troubleshooting and problem-solving skills.
- Collaborates across the other engineering disciplines such as Mechanical, Electrical, Controls, and Systems.
- Ensures that technical approach is consistent with established engineering principles and practices.
- Ensures that cost and schedule targets are met, product outcomes meet customer needs, and customer and company technical, system, performance, process, and quality requirements are met.
Skills/Experience required:
- Object-oriented software architecture, software design, C++ coding, and unit testing of embedded software with knowledge of requirements-based software verification and traceability.
- Use of version control and issue tracking tools.
- Minimum of 8 years of experience in real-time embedded software development.
- Experience to include requirements analysis, software design, implementation (code and unit test) and authoring of formal deliverable documentation.
- Bachelor's degree in STEM field.
Preferred Qualifications:
- Developing and troubleshooting communications, device drivers, and IO interfaces.
- Integrating or testing software on bare metal and with various real-time operating systems such as vxWorks and Linux/Unix derivatives.
- Experience in architectural level software design using Magic Draw, Enterprise Architect, or similar model-based engineering tool.
- Experience either standing up or extending software verification environments in support of automated software verification testing.
- Familiarity with weapon systems, munitions, and/or combat vehicle functionality and capability.
- Experience using GitLab or other CI / CD tools.
- Bachelor's degree and/or master's degree in Computer Engineering, Software Engineering, Electrical Engineering, or Computer Science.
About Trispoke managed services
Go to job list