Software Engineer 3
Lam Research International Holding Company
Waltham, United States of America
16 days ago
Role details
Contract type
Permanent contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
JuniorJob location
Remote
Waltham, United States of America
Tech stack
Testing (Software)
Clean Code Principles
.NET
Microsoft Windows
API
Algorithm Design
Component-Based Software Engineering
Automation of Tests
Bash
C Sharp (Programming Language)
C++
Software Quality
Computer Engineering
Concurrent Computing
Continuous Delivery
Continuous Integration
Data Structures
Software Debugging
Software Design Patterns
Linux
DevOps
Distributed Systems
Memory Management
Embedded Software
Python
Linux System Administration
Machine Learning
Modular Design
Networking Basics
Object-Oriented Software Development
Scrum
Systems Development Life Cycle
Real-Time Operating Systems
Serial Communications
Software Engineering
TCP/IP
Multithreading
Performance Testing
GitHub Copilot
State Machines
Peripherals
Atlassian Tools
Data Analytics
Software Version Control
Docker
Jenkins
Job description
We are seeking a hands-on software engineer to design, develop andvalidaterobust software solutionsforequipment intelligence applications, using C++ and Python, while supporting automated validation, CI/CD pipelines, and software quality processes.
This is a full-time position, based in Dublin, Ireland. What you'll do
- Design, develop, troubleshoot, and debug software programs for enhancements and new products, using different languages C++,Pythonand .NET, in various operating systems
- Provides technical and professional leadership and support to enable software engineering projects emphasizing control algorithm development applied to machine data for new product development and equipment intelligence for Industry 4.0
- Collaborate with developers, QA, applications support and domain experts to define customer-centric test cases, isolate and resolve defects, and provide first-level support and code-level debugging across distributed, embedded control systems.
- Develop andmaintainautomated test frameworks and validation tools,including functional, regression, and performance testing
- Demonstrate solutions through clear documentation,flowchartsand clean code, and contribute to DevOps / CI-CD activities (e.g. Jenkins) to support continuous delivery of the product.
- Work within cross-functional teams to deliver tangible results under strict deadlines, with international travel (USA, Europe, Asia) whenrequired- typically less than 10%.
Requirements
- Bachelors degree in Computer Engineering, Electronics, or Mechanical Engineering with 5+ years of experience; OR Masters degree with 3+ years experience; OR PhD with 1+ years experience; OR equivalent experience.
- Strong hands-on experience with modern languages including modular design, data structures, algorithms, memory management, and performance across C++, Python, and .NET C#. Experience with application components, services, tooling, and native code interop.
- Strong understanding of Windows programming (APIs, services, processes, tooling) and working knowledge of Linux and Bash, including building, running and debugging applications on both platforms.
- Solid object-oriented design skills including design patterns and finite state machines. Strong knowledge of multithreading and concurrent programming (scheduling, synchronization, thread safety).
- Experience with source control, modern software development cycles, root cause analysis, and networking fundamentals including TCP/IP.
- Hands-on experience using AI-assisted development tools such as GitHub Copilot or similar in daily engineering workflows.
- Experience with embedded software development, distributed systems, and real-time operating systems.
- Exposure to software testing or QA practices and debugging/root cause analysis.
- Excellent verbal and written communication skills. Ability to communicate technical information clearly at all levels. Team-oriented and able to work independently and cross-functionally., * Semiconductor technology and processing knowledge, and exposure to data analytics, machine learning or process control algorithms applied to equipment data
- Experience with containers and virtualization (e.g. Docker) and deploying or running applications across mixed Windows / Linux environments.
- Experience working in Agile / Scrum teams with tools such as Jira and Confluence.
- Familiarity with low-level serial communication between devices and peripherals.
- Experience in test automation, familiarity with DevOps, SDLC and CI/CD tools
About the company
In the Global Products Group, we are dedicated to excellence in the design and engineering ofLam's etch and deposition products. We drive innovation to ensure our cutting-edge solutionsare helping to solve the biggest challenges in the semiconductor industry.
The impact you'll make
As a Software Engineer at Lam, you will be at the forefront of innovation by designing, developing, troubleshooting, and debugging software programs. Your role is pivotal in developing software tools that support design, infrastructure, and technology platforms. Yourexpertisewilldeterminehardware compatibility and influence design, ensuring seamless integration between software and hardware.In this role,you'llmake an impact across Lam's entire product portfolio of equipment working within our centralized software engineering team, collaborating with some of the brightest minds in the industry.This position is a hybrid rolewhich will include both Software Development andDevOps-driven Quality Assurance and Validation., We believe it is important for every person to feel valued, included, and empowered to achieve their full potential. By bringing unique individuals and viewpoints together, we achieve extraordinary results.