Senior Software Engineer II
MicrochipJob Title
Senior Software Engineer II
Role Summary
Join the software development team in Chennai to design and implement configuration, provisioning, and diagnostic tools for USB hubs and PCIe/USB Ethernet controllers. The role focuses on building reliable, secure applications that integrate with firmware and hardware.
Primary responsibilities include developing Rust-based utilities (CLI or GUI), implementing device communication interfaces, and working with cross-functional teams to deliver production-ready tools.
Experience Level
Senior β 7β10 years of software development experience with exposure to embedded or hardware-integrated systems.
Responsibilities
Deliver software tools and integrations for device configuration, management, and diagnostics:
- Design and develop configuration, provisioning, and diagnostic tools using Rust.
- Build reliable, secure, and scalable applications for configuring and managing embedded devices and systems.
- Develop GUI- or CLI-based utilities for device setup, monitoring, firmware management, and system configuration.
- Implement communication interfaces and protocols such as UART, SPI, I2C, CAN, USB, Ethernet, and TCP/IP.
- Work closely with firmware, hardware, and product engineering teams to define requirements and integration workflows.
- Optimize application performance, responsiveness, and usability; debug device communication issues.
- Develop automated testing, validation, and CI/CD workflows for configuration tools.
- Create and maintain technical documentation, APIs, and user guides; participate in code reviews.
Requirements
Must-have technical skills and experience; nice-to-have items listed below.
- Minimum 7β10 years of software development experience with embedded or hardware-integrated systems.
- Strong proficiency in Rust.
- Experience developing configuration, monitoring, or system utility tools (CLI or GUI).
- Knowledge of device communication protocols and hardware interaction (UART, SPI, I2C, CAN, USB, Ethernet/TCP-IP).
- Familiarity with multithreading, concurrency, and performance optimization.
- Experience with Linux and/or Windows application development.
- Strong debugging and problem-solving skills; experience with Git and collaborative development workflows.
- Understanding of secure coding practices and software reliability.
Nice-to-have:
- Experience with automated testing, validation, and CI/CD workflows.
- Experience developing firmware integration or hardware diagnostics.
Education Requirements
Bachelor's or master's degree in Computer, Electronics, or Electrical Engineering.
About the Company
Company: Microchip
Headquarters: Chandler, Arizona, USA
Microchip is a leading semiconductor company focused on developing innovative solutions to enhance the human experience. With a commitment to empowering innovation, Microchip prioritizes the value of its employees by fostering a culture that supports their growth and contributions.
