Sr Software Engineer

Brooks Automation•Fremont, CA

About The Position

Brooks Automation is seeking a Senior Software Engineer for its Fab Automation team, focused on semiconductor predictive maintenance software and related projects. The role develops client-side applications and collaborates with cross-functional teams to deliver robust, high-quality solutions. The position includes designing, developing, testing, documenting, and analyzing software applications for company products. Work may cover new programs as well as enhancements, modifications, and corrections to existing software. At the principal level, the role may provide direction for complex business components or projects, lead project teams, mentor junior staff, and serve as a principal customer contact or interface with senior company management. Work arrangements may include a mix of in-office and remote work depending on the role and business needs; specific expectations will be shared during the interview process. The position is eligible for an annual discretionary bonus.

Requirements

  • Bachelor’s degree in Software Engineering, Computer Science, or a related field, or relevant software engineering experience.
  • Minimum of 10 years of professional software engineering experience.
  • Minimum of 5 years of hands-on experience developing desktop applications in C# using .NET Framework.
  • Strong written and verbal communication skills.
  • Experience working in small engineering teams of 6–12 members.

Nice To Haves

  • Experience with WPF, WCF, object-oriented programming, Windows 10, XAML, MVVM, multithreading, data structures, and algorithms.
  • Experience with semiconductor equipment and factory automation systems.
  • Proficiency in developing multithreaded applications.
  • Experience with WPF application development.

Responsibilities

  • Gather and document software requirements, create detailed specifications, and review them with the team.
  • Collaborate with software engineers to ensure seamless integration with existing systems.
  • Coordinate with the QA team to support software quality assurance efforts.
  • Develop Acceptance Test Procedures (ATP) and test cases.
  • Perform unit testing using software emulation tools.
  • Conduct component-level and system-level testing.
  • Assist in debugging and resolving system integration issues.
  • Review and evaluate legacy code for compatibility and functionality.
  • Design, develop, test, document, and analyze software applications for company products.
  • Develop new programs and subprograms and enhance, modify, and correct existing software and systems.
  • Design applications, write code, complete programming, develop and execute testing and debugging routines, and document work and results.
  • Keep up to date on technical advances in the discipline and related fields.
  • At the principal level, provide direction for a business component, project, or project team; this may include project plans, schedules, work assignments, customer contact, technical presentations, and cross-functional issue resolution.
  • At the principal level, mentor and transfer knowledge to more junior staff members.

Benefits

  • Medical insurance
  • Dental insurance
  • Vision insurance
  • Disability insurance
  • 401(k) plan
  • Company-paid holidays for exempt employees
  • Flexible Vacation for exempt employees
  • Annual discretionary bonus
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service