STEM OPT Software Applications Engineer Jobs
Software Applications Engineer roles qualify for STEM OPT when your degree falls under an eligible CIP code in computer science, engineering, or a related field. Your employer must be enrolled in E-Verify, and the 24-month extension gives you up to 36 months total to build your career in software development in the U.S.
See All Software Applications Engineer JobsOverview
Showing 5 of 350+ Software Applications Engineer jobs


Have you applied for this role?


Have you applied for this role?


Have you applied for this role?


Have you applied for this role?


Have you applied for this role?
See all 350+ Software Applications Engineer jobs
Sign up for free to unlock all listings, filter by visa type, and get alerts for new Software Applications Engineer roles.
Get Access To All Jobs
About Atomic Machines
Atomic Machines is ushering in a new era of micromanufacturing with its Matter Compiler™ technology. This full-stack technology enables new classes of micromachines to be designed and built by offering manufacturing processes and a materials library that is inaccessible to semiconductor manufacturing methods. It promises to unlock MEMS manufacturing for the many device classes frustrated by semiconductor methods and to open up entirely new product classes. The Matter Compiler™ technology fully realizes the digital manufacturing dream: bits and raw materials go in, and complete, functional micromachines come out. The Atomic Machines team has also created an exciting first device—one that was only made possible by the existence of the Matter Compiler™ technology—that we will be unveiling to the world soon.
Our offices are in Emeryville and Santa Clara, California.
About The Role
As a Software Applications Engineer, Robotic Systems, you will build the distributed software systems that control the Matter Compiler. These systems coordinate real hardware - sensors, actuators, and manufacturing processes - under real-time and reliability constraints.
You will work across layers of the stack, from low-level device interaction to higher-level APIs that define machine behavior. In one sprint, you might debug a timing issue between devices; in another, you may implement an interface that enables coordination across a fleet of machines.
This role is well-suited for engineers with strong fundamentals, hands-on curiosity, and a desire to grow into systems-level thinking through exposure to real-world, hardware-driven systems. This role is based in either our Santa Clara or Emeryville offices.
- Write, test, and debug software that directly interfaces with robotics and manufacturing systems
- Build and operate distributed systems that coordinate state, timing, and behavior across multiple devices
- Investigate and resolve issues spanning software, firmware, and physical systems
- Contribute to system reliability through logging, observability, and fault handling
- Work across the stack—from device-level interaction to networked APIs
- Collaborate closely with mechanical, electrical, and process engineers to define system behavior
- 2+ years of experience (including internships, research, robotics projects, or relevant industry work)
- Bachelor's degree in Computer Science, Electrical Engineering, Mechanical Engineering, Robotics, or a related field
- Strong proficiency in Python for building and debugging production systems (our stack primarily includes Python, C++, and Go)
- Experience with at least one systems or strongly typed language such as C++, Rust, or Go
- Solid understanding of core computer science fundamentals (data structures, concurrency, systems basics)
- Experience building or debugging systems that interact with hardware or other external systems
What Makes You Stand Out
- Experience working with robotics, embedded systems, or hardware-adjacent software
- Familiarity with real-time systems or resource-constrained environments
- Experience debugging complex issues across multiple layers (software, firmware, hardware)
- Exposure to distributed systems or networked device coordination
- Interest in how physical systems behave under real-world constraints (latency, noise, failure, safety)
- Experience with observability, testing, or infrastructure tools
See all 350+ Software Applications Engineer jobs
Sign up for free to unlock all listings, filter by visa type, and get alerts for new Software Applications Engineer roles.
Get Access To All JobsTips for Finding STEM OPT Authorization as a Software Applications Engineer
Verify your CIP code before applying
Cross-reference your degree's Classification of Instructional Programs code against the DHS STEM OPT designated degree list before you apply. Not all computer science or engineering programs carry eligible codes, and a mismatch will block your extension before it starts.
Check E-Verify status before accepting offers
Every Software Applications Engineer employer must be actively enrolled in E-Verify to sponsor your STEM OPT extension. Confirm enrollment through the official E-Verify employer search before signing anything, a non-enrolled employer cannot legally onboard you under this authorization.
Build an I-983 training plan tied to your role
Your I-983 must map specific learning objectives to your day-to-day Software Applications Engineer duties. List concrete skills like system design, API development, or CI/CD pipeline work. Vague plans draw DSO scrutiny and can delay your extension approval.
Use Migrate Mate to find verified employers
Filter your Software Applications Engineer job search on Migrate Mate to surface employers with confirmed E-Verify enrollment. Targeting verified employers from the start cuts weeks of back-and-forth with recruiters who can't support your STEM OPT extension.
Research prevailing wage before negotiating
Look up the Software Applications Engineer prevailing wage for your target metro using the OFLC Wage Search before your offer call. Employers filing an LCA must meet the DOL wage level for your role and location, so knowing the floor protects your negotiating position.
Time your cap-gap window with your start date
If your OPT expires while an H-1B petition is pending and you're selected in the lottery, cap-gap automatically extends your work authorization through September 30. Coordinate your Software Applications Engineer offer letter start date with your DSO so your I-20 reflects the correct cap-gap end date.
Software Applications Engineer jobs are hiring across the US. Find yours.
Find Software Applications Engineer JobsFrequently Asked Questions
Does a Software Applications Engineer role qualify for STEM OPT?
Yes, if your employer is enrolled in E-Verify and your degree carries an eligible CIP code. Software Applications Engineer maps to SOC code 15-1256 under O*NET, and degrees in computer science, software engineering, information systems, and closely related STEM fields typically qualify. Confirm your specific CIP code against the DHS STEM OPT designated degree list through your DSO before filing.
Which STEM degrees make me eligible for the 24-month extension in this role?
Degrees in computer science, computer engineering, software engineering, electrical engineering, information technology, mathematics, and related fields are commonly eligible. The deciding factor is your degree's CIP code, not its title. Your DSO can confirm whether your program code appears on the official DHS designated degree list before you submit your STEM OPT extension application to USCIS.
What goes into the I-983 training plan for a Software Applications Engineer?
Your I-983 must describe specific technical and professional goals tied to your actual job duties. For a Software Applications Engineer, that means listing objectives like mastering a particular software stack, contributing to system architecture decisions, or developing proficiency in agile methodologies. Objectives should be measurable, time-bound, and directly connected to skills your degree prepared you for. Generic language about 'gaining experience' will not satisfy DSO review.
How do I confirm my employer is enrolled in E-Verify before accepting an offer?
Use the E-Verify employer search tool to look up your prospective employer by name or Employer Identification Number before you sign an offer letter. Enrollment status is publicly searchable. If a company appears in the results as an active E-Verify participant, they meet the baseline STEM OPT employer requirement. If they don't appear, they cannot legally employ you under STEM OPT without enrolling first.
Where can I find Software Applications Engineer jobs that support STEM OPT?
Migrate Mate lets you search Software Applications Engineer openings filtered for employers who meet STEM OPT requirements, including E-Verify enrollment. Searching a filtered list from the start means you spend less time chasing roles at companies that can't support your extension and more time pursuing offers that can actually move forward.
See which Software Applications Engineer employers are hiring and sponsoring visas right now.
Search Software Applications Engineer Jobs