> Markdown version of [/jobs/ext/2557786-application-software-engineer-i](https://www.wearedevelopers.com/jobs/ext/2557786-application-software-engineer-i). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Application Software Engineer I - **Company:** RFA Engineering - **Location:** Eden Prairie, MN, United States - **Experience:** Starter - **Salary:** $65,000.0 - $80,000.0 - **Contract:** Permanent contract - **Skills:** Testing (Software), Agile Methodology, Software Applications, Unit Testing, C++ (Programming Language), CAN Bus, Computer Engineering, Continuous Delivery, Continuous Integration, Programming Tools, Graphical User Interface, Integrated Development Environments, Message Queuing Telemetry Transport (MQTT), Qt Modeling Language (QML), Qt (Software), Simulink, Software Engineering, Software Requirements Analysis, Systems Integration, Software Troubleshooting, Integration Tests, Information Technology, Software Version Control - **Published:** August 4, 2026 - **Apply:** https://www.indeed.com/viewjob?jk=3cf13158e6cdde35 ## About the Role * Bachelor's or Master's of Science degree in Computer Science, Software Engineering, Electrical Engineering, Computer Engineering, or related experience/degree. * Experience with C or C++ programming languages * Strong mathematical and analytical problem-solving skills * Strong verbal and written communication skills * Ability to thrive in a team environment * Self-motivated, adaptable, growth mindset toward assignments * Must have a valid driver's license Desired Attributes * Previous experience in a structured software development process * Experience developing graphical user interfaces using event-driven Qt/QML. * Exposure to stack development abstraction concepts and frameworks. * Familiarity with CAN protocol or other communication standards. * Understanding of MQTT or similar broker-based communication systems. * Ability to interpret software requirements and different software architectural diagrams * Knowledge of development tools such as integrated development environments (IDEs), source code control systems, and Continuous Improvement and Continuous Deployment (CI/CD) tools and techniques. * Experience with Simulink Model-Based Software Design * General machine knowledge of industrial equipment or machinery, Preferred * Bachelors of Science or better in Electrical Engineering or related field * Bachelors of Science or better in Computer Science or related field * Bachelors of Science or better in Computer Engineering or related field, Preferred * Soft Lang - C++ * Soft - Agile * Soft - CAN Bus * Soft Lang - C ## Description This position involves the design and development of software that allows an operator to control machine functions. Several development roles are available, requiring proficiency in C and C++, along with generating source code using MATLAB Simulink for Model-Based Software Development (MBSD). Testing methods include unit testing, bench testing with hardware, vehicle simulation testing, and physical testing of the entire machine., * Development of software applications that interface with users and control vehicle operation using C, C++, or Simulink MBSD. * Integration of software in a multi-developer Agile team using Continuous Integration process. * Functional and integration testing prior to hand-off to software test and evaluation group * Development and release status tracking using the Agile development process. * Troubleshooting and debugging using unit tests, vehicle simulators, and bench testing of controllers with hardware in the loop. * Creation of software design documentation. ## Related Videos - [Building a hypercar from scratch](https://www.wearedevelopers.com/videos/607-building-a-hypercar-from-scratch) - [Agile work at CARIAD – Creating a customer web application for controlling the vehicle ](https://www.wearedevelopers.com/videos/200-agile-work-at-cariad-creating-a-customer-web-application-for-controlling-the-vehicle) - [Are you still programming unit tests or already generating?](https://www.wearedevelopers.com/videos/722-are-you-still-programming-unit-tests-or-already-generating) - [A Hitchhikers Guide to Container Security - Automotive Edition 2024](https://www.wearedevelopers.com/videos/1119-a-hitchhikers-guide-to-container-security-automotive-edition-2024) - [Car's are Technology on Wheels - Impact of Software and IT Competence in Automotive](https://www.wearedevelopers.com/videos/780-car-s-are-technology-on-wheels-impact-of-software-and-it-competence-in-automotive) - [How Unit Testing Saved My Career](https://www.wearedevelopers.com/videos/1642-how-unit-testing-saved-my-career) ## Related Articles - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [Software Engineer Career: Things You Should Know](https://www.wearedevelopers.com/magazine/143-software-engineer-career-things-you-should-know) - [What is Software Engineering?](https://www.wearedevelopers.com/magazine/289-what-is-software-engineering) - [How software is steering vehicle technology](https://www.wearedevelopers.com/magazine/515-how-software-is-steering-vehicle-technology) - [The Ultimate Software Engineer Career Path Guide for 2023](https://www.wearedevelopers.com/magazine/146-the-ultimate-software-engineer-career-path-guide-for-2023) - [What Jobs Can You Get with a Software Engineering Degree?](https://www.wearedevelopers.com/magazine/398-what-jobs-can-you-get-with-a-software-engineering-degree)