Overview
Software Engineer 2 role within the Office of the CTO's centralized software engineering team, designing, developing and debugging software for controllers and computers managed by the Controls group across Lam's equipment portfolio.
What you'll do
- Design, develop, verify, validate, debug, and qualify software for controllers and computers managed by the Controls group.
- Manage the software product lifecycle and maintain comprehensive, accurate design documentation.
- Collaborate with hardware and firmware engineers throughout product development, integration, and debugging.
- Partner with systems engineers to ensure seamless product integration and qualification.
What you'll need
- Bachelor's or Master's degree in Electronics and Communication Engineering, Information Technology, Computer Science, or a related discipline.
- 3 to 8 years of experience in software design and development.
- Expertise in creating Golden OS images for custom Windows-based controllers using tools such as Windows PE and Ghost.
- Experience with real-time operating systems, such as FreeRTOS, real-time Linux, VxWorks, QNX, or Windows Embedded.
- Knowledge of bootloaders and boot managers, including GRUB and U-Boot.
- Proficiency with communication protocols, including EtherCAT, CAN, UART, RS-232, RS-422/485, Ethernet (TCP/UDP), and LonWorks.
- Hands-on experience with version-control systems such as Git.
- Strong software debugging, troubleshooting, and root-cause analysis skills.
Nice to have
- Hands-on experience with the Smalltalk programming language.
- Programming experience in embedded C/C++ and Python.
- Experience developing and integrating device drivers.
- Practical experience integrating and testing hardware and software in embedded systems.
Details
- Location: Bangalore, India.
- Work mode: Hybrid. On-site Flex roles work 3+ days per week on-site with the balance remote; Virtual Flex roles work 1-2 days per week on-site with the rest remote.
Read the full description and apply on the company’s own careers page.