Senior Technical Staff Engineer - Software
Listed on 2026-07-08
-
Software Development
Unix/Linux, Software Engineer, C++ Developer, Embedded Software Engineer
Microchip's Frequency and Timing Systems Business Unit is the world's leading source of precise timing and synchronization solutions. We are looking for a Senior Technical Staff Embedded Systems Software Engineer to join our Development team in Santa Rosa or San Jose, CA. In this role, you will work on platform and technology building blocks for our network timing and synchronization product range.
Responsibilities- Design, develop, and optimize scalable software solutions for embedded devices and systems using embedded Linux operating system.
- Develop, customize, and maintain Pre-loader, U-Boot boot loader, and Linux kernel modules to support new hardware platforms and features.
- Design and deliver high‑quality Linux kernel drivers for diverse peripherals, ensuring robust hardware‑software integration.
- Collaborate cross‑functionally with hardware engineering, software QA, operations, and global development teams to align on technical strategy, troubleshoot complex issues, and drive project delivery.
- Perform board bring‑up activities for newly designed hardware.
- Troubleshoot, analyze, and resolve technical problems as they arise.
- Create and maintain custom Ethernet drivers tailored to specific requirements.
- Prepare design documentation and functional specifications for new software modules.
- Bachelor's or Master's degree in Computer Science, Electronics Engineering, or a related field, with a minimum of 15 years of experience developing embedded platform software.
- Hands‑on experience with Linux kernel internals and peripheral driver development (Ethernet, Flash, SPI, IC, UART).
- Expertise in U‑Boot boot loader customization and Linux kernel porting across embedded platforms.
- Experience with board bring up on ARM based systems.
- Experience in IP protocols and networking software development.
- Skilled in Linux Ethernet device driver development.
- Knowledge of networking technologies including Firewall, Routing, IPv4/IPv6, and VLANs.
- Strong understanding of embedded software design on Linux‑based systems.
- Deep knowledge of OS coding techniques such as processes, threads, interrupts, etc.
- Proficient in C programming and shell scripts.
- Strong debugging skills using tools such as GDB and Lauterbach.
- Experience in Yocto framework.
- Familiar with QorIQ Layerscape family of processors.
- Familiar with PCI Express controllers and bus specifications.
Travel Time: 0% - 25%
Physical Attributes: Feeling, Hearing, Other, Seeing, Talking, Works Alone, Works Around Others
Physical Requirements: 80% Sitting, 10% Walking, 10% Standing, Usual Business Hours
Pay Range: The annual base salary range for this position in the US is $91,000 - $232,000, depending on numerous factors including job location, skills and experience.
We offer a total compensation package that includes competitive base pay, restricted stock units, quarterly bonus payments, health benefits that begin day one, retirement savings plans, and an industry‑leading ESPP program with a 2‑year look back feature. For more information about all our benefits, visit our benefits page.
U.S. Export Controls Requirements: This job requires access to technology, materials, software, or hardware that is controlled by the export laws of the United States. Candidates must provide proof of U.S. citizenship, permanent residency, or classification as a protected individual as defined in 8 USC 1324b (a) (3).
Equal Employment Opportunity: Microchip Technology Inc. is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to sex, gender identity, sexual orientation, race, color, religion, national origin, disability, protected veteran status, age, or any other characteristic protected by law.
#J-18808-Ljbffr(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).