Principal Software Engineer - Connectivity
Job Description
Job DescriptionPrincipal Software Engineer - ConnectivityExpert Technical Solutions is seeking a skilled Principal Software Engineer for one of our premier, industry leading clients in Indianapolis, IN 46256. This person will be responsible for the development of software for the Connectivity module to connect with water heating products and HVAC products, including requirements, design, qualification, and life cycle support. Will work to implement and extend a common connectivity and reusable architecture strategy within our client’s environment. This is a key position on the electronic controls team within the organization, providing advanced technologies and systems solutions for core products and other business units.This is a 3 Month Contract to Permanent (Hybrid – 4 days onsite in Indianapolis, IN 46256) opportunity offering excellent pay, benefits, and growth potential. Primary Duties and Responsibilities:
- Work with systems engineering, product engineering, marketing, manufacturing, and others to capture electronic controls requirements for specific HVAC and water heating applications.
- Work collaboratively with Lead Software and Systems Architecture Engineer to develop and extend software architecture and design for software applications.
- Develop software for embedded applications, following team conventions for design and documentation
- Provide a comprehensive self-review and test of software
- Work with systems and product engineers to support the validation of the software in the product application, with a focus on identifying and resolving any software, hardware, or system anomalies
- Work with controls contract manufacturers, products manufacturing engineering and service on the implementation and validation of software features to support construction and field support
- Support the development of tools for PC, handheld, and other devices that could be used for development, test, manufacturing, service, or other applications
- Work with cross functional teams through direct interactions and team meetings in developing and translating new concepts into applications.
- Develop performance and qualification test methods, coordinate the implementation of experiments, and evaluate test results.
- Lead and participate in formal design reviews of electronic controls requirements, schematics, layouts, software, as well as FMEA, DFM, DFT, and other related analyses.
- Prepare and support the review and release of formal requirements, design, and qualification documentation.
- Continue to develop professionally. Represent company as requested in technical societies and keep the company advised of pertinent developments, new concepts, and opportunities
Required Qualifications:
- Bachelor’s degree in computer and electrical engineering, Computer and Electrical Engineering Technology, or Computer Science. Master’s Degree Highly Preferred
- 7+ years’ experience in developing production software for embedded microprocessor-based controls in assembly and C.
- 7+ years of C/C++ software engineering experience in multi-threaded, real-time embedded systems
- 7+ years’ experience in embedded software operation in electronic equipment controls, incorporating both analog and digital circuits.
- Experience in presenting technical information to groups.
- Experience working successfully with multiple departments such as R&D, marketing, manufacturing, service engineering, suppliers, and customers.
- Expert-level programming experience in assembly and Embedded C
- Experience with version control programs such as GitHub.
- Experience with software/hardware tools such as microcontroller emulators, oscilloscopes, and test instrumentation.
- Expertise in peripherals communication such as SPI, QSPI, UART, and RS485.
- Expertise with multiple communications media and protocols such as wired (RS485, Ethernet), wireless(BLE, WiFi, Thread, Matter, Amazon Sidewalk), optic, BACnet, Modbus, TCP/IP.
- Experience in Secure Boot, X509, TLS, Encrypted File Systems
- Experience in Model-based software development using MATLAB / LabVIEW tools.
- Ability to read and interpret schematic diagrams for PCB controls and wiring diagrams.
- Developing firmware documentation to support control development.
- Technical knowledge of product design and failure analysis
- Working knowledge of statistical methods or Design-of-Experiments (DOE)
- Experience with electronic analysis methodologies and associated instrumentation.
- Proficiency in Microsoft Word, Excel, and PowerPoint
- Demonstrated ability to work well with others in a team environment.