Software Engineer 3
Role details
Job location
Tech stack
Job description
We are seeking a highly skilled and motivated professional to join our Controls group as a Lead Software Engineer. As a Software Engineer at Lam, you will be at the forefront of innovation by designing, developing, and troubleshooting, and debugging software for Embedded products. Your role is pivotal in developing Software that support design, infrastructure, and technology platforms. This role requires a strong technical background, excellent problem-solving skills, and the ability to collaborate effectively with cross-functional teams. In this role, you'll make an impact across Lam's entire product portfolio of equipment working within our centralized Controls engineering team, collaborating with some of the brightest minds in the industry. What you'll do
*Design, develop, verify, validate, debug, and qualify software for controllers and computers managed by the Controls group. *Manage the product lifecycle, ensuring comprehensive design documentation is maintained. *Collaborate with hardware and firmware engineers during product development, integration and debugging processes. *Partner with system engineers to ensure seamless integration and qualification. Qulaifications
Requirements
*Bachelor's or Master's degree in Engineering (EE, EC, IT, CS, or related disciplines). *5-8 years of experience in software design and development. Mandatory Skills and Preferred Skills
Manadatory Skills :
*Expertise in creating golden OS images for custom Windows-based controllers using tools such as WinPE and Ghost. *Experience with Real-Time Operating Systems such as FreeRTOS, Linux RTOS, VxWorks, QNX, and Embedded Windows. *Proficiency in programming with Embedded C and scripting languages such as Python and shell scripting. *Familiarity with SoM & SoCs, along with experience in creating custom embedded Linux systems using tools like Yocto and Buildroot. *Knowledge of boot loaders/managers like GRUB and U-Boot. *Proficiency in communication protocols, like EtherCAT, CAN, UART, RS232, RS422/485, Ethernet (TCP/UDP), and LonWorks. *Hands-on experience with version control systems like Git. *Strong debugging and troubleshooting skills for software systems., *Hands-on experience with the Smalltalk programming language. *Advanced proficiency in embedded C and C++ programming, including driver development and integration. *Practical experience in hardware/software integration and testing for embedded systems. *Familiarity with tools such as MATLAB for system modeling and analysis. Our commitment