Description

Brooks is a leading worldwide provider of automation, vacuum, and instrumentation solutions for multiple markets including semiconductor manufacturing, life sciences, and clean energy. We are currently looking for a software development engineer for equipment control projects. This is an internship position for the summer of 2020. The position is based out at Brooks Automation’s west coast office at Fremont, California and remote work.

Job Description

The primary area of work is C++ and C# programming in Microsoft Visual Studio 2017 targeting .NET compact framework. Our projects all involve e mbedded software control of robotic and other motion related hardware . The following specific tasks will be performed during the project life cycle:

Gather requirements, write requirement specification and get specification reviewed by team
Interact with Mechanical and Electrical engineers and understand system
Write design specification and get spec reviewed by team
Implement the design with C++/C# programming
Get code reviewed by team
Unit testing over software emulation
Unit testing on hardware
Integrate software component to overall system
Work with rest of team in debugging system integration problems
Write release notes for software developed
Weekly status report to project lead

Skills & Experience

REQUIRED QUALIFICATIONS:
Background in Software Engineering Computer Science, or related field , with 1 year of experience in programming . Excellent written and verbal communication skills. Previous experience in working with a small team. A minimum of 6 months of experience of one of the following C++, C# Programming, java, python, embedded RTOS, Atollic or similar Eclipse based IDE . The ideal candidate must be a self-starter, a motivated and quick learner, proactive in problem solving.

DESIRED QUALIFICATIONS(NOT REQUIRED):
1 year of experience in UML based state-machine design and coding, programming multi-threading in C#/Java/C++, software in instrumentation or equipment control, robotics and motion control related software.

Experience in some of the following areas are desired: NutTx type of RTOS, microcontroller with embedded RTOS, file systems, programming for the Microsoft .NET compact framework, programming devices based on Windows CE, experience in any of ISA/PCI/UCB/CAN bus-based device programming, TCP/IP based network programming, C# based rich GUI development. microcontrollers and peripherals like SPI, ADC, I2C, etc.

", "datePosted" : "2020-05-07 04:15:00.220492", "validThrough" : "2020-08-07T04:15:00.220492Z[Etc/UTC]", "employmentType" : "INTERN", "hiringOrganization" : { "@type" : "Organization", "name" : " Semiconductor", "logo" : "" }, "jobLocation": { "@type": "Place", "address": { "@type": "PostalAddress", "addressLocality": "Fremont", "addressRegion": "CA", "addressCountry": "US", "postalCode": "94538" } } }
Software Engineer Intern

Semiconductor

Software Engineer Internship

Description

Brooks is a leading worldwide provider of automation, vacuum, and instrumentation solutions for multiple markets including semiconductor manufacturing, life sciences, and clean energy. We are currently looking for a software development engineer for equipment control projects. This is an internship position for the summer of 2020. The position is based out at Brooks Automation’s west coast office at Fremont, California and remote work.

Job Description

The primary area of work is C++ and C# programming in Microsoft Visual Studio 2017 targeting .NET compact framework. Our projects all involve e mbedded software control of robotic and other motion related hardware . The following specific tasks will be performed during the project life cycle:

Gather requirements, write requirement specification and get specification reviewed by team
Interact with Mechanical and Electrical engineers and understand system
Write design specification and get spec reviewed by team
Implement the design with C++/C# programming
Get code reviewed by team
Unit testing over software emulation
Unit testing on hardware
Integrate software component to overall system
Work with rest of team in debugging system integration problems
Write release notes for software developed
Weekly status report to project lead

Skills & Experience

REQUIRED QUALIFICATIONS:
Background in Software Engineering Computer Science, or related field , with 1 year of experience in programming . Excellent written and verbal communication skills. Previous experience in working with a small team. A minimum of 6 months of experience of one of the following C++, C# Programming, java, python, embedded RTOS, Atollic or similar Eclipse based IDE . The ideal candidate must be a self-starter, a motivated and quick learner, proactive in problem solving.

DESIRED QUALIFICATIONS(NOT REQUIRED):
1 year of experience in UML based state-machine design and coding, programming multi-threading in C#/Java/C++, software in instrumentation or equipment control, robotics and motion control related software.

Experience in some of the following areas are desired: NutTx type of RTOS, microcontroller with embedded RTOS, file systems, programming for the Microsoft .NET compact framework, programming devices based on Windows CE, experience in any of ISA/PCI/UCB/CAN bus-based device programming, TCP/IP based network programming, C# based rich GUI development. microcontrollers and peripherals like SPI, ADC, I2C, etc.