Software Engineer

Engineering - Software, R&D, Technology Fremont, California


Description

Embedded Software Engineer with experience in wafer processing and handling environment. .

 

Responsibilities

  • Design, develop code, test and debug system software.
  • Review coding and design criteria and optimizes performance.
  • Analyze and enhance efficiency, stability and scalability of system resources.
  • Integrate and validate new product designs.
  • Interface with hardware design and development.
  • Contribute new and innovative ideas to rapidly evolving business development activities
  • Assess third party and open source software.

Interpersonal Skills

  • Strong sense of ownership and independent motivation for success
  • Leadership skills and appreciate of the team work needed to develop and document necessary algorithms to ensure the system meets all safety and customer interface requirements
  • Agile and creative in implementing solutions
  • Ability to seek resources and consultation internally and externally to formulate the right plan before and during development
  • Track record of successful industrial control projects and products
  • Seek internal and customer feedback and requirements, formulate solutions, present them to management and implement them
  • Project planning, accurate man-hour estimates, resource allocation and equipment costing.
  • Ability to work well and communicate effectively with a team of engineers from multiple disciplines (system, electrical, process)

Software and algorithm coding

  • Solid mathematical and algorithm development skills
  • Experience in multi-threading environment
  • 5+ years of C/C++ coding for machine control application  and ability to optimize code
  • Data acquisition (DAQ), data logging strategies in limited memory space and Fault communication to user and service
  • In depth knowledge of one or more real time industrial communication protocols (e.g. CAN, MODBUS, EtherCat, Profibus, etc.) including programming of these communication stacks
  • In depth TCP network knowledge, including programming HTTP stacks is a plus
  • Knowledge and implementation of code test methodologies and defensive programming best practices
  • Experience in RTOs such as VxWorks,, QNX, Linux.

 

Environmental, Health & Safety Requirements:

·         Successful completion of required Safety training.

·         Ensure equipment and machines are maintained in safe operating condition.

·         Report to the Safety Officer any unsafe or unhealthy condition which cannot be corrected.

·         Follow all safety and health regulations and work practices, including personal protective equipment where applicable.