Solution Architect

Y Axis Inc
Fremont, United States of America
yesterday

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Fremont, United States of America

Tech stack

C Sharp (Programming Language)
C++
Communications Protocols
Computer Engineering
Software Debugging
Software Design Patterns
Hardware Design
Object-Oriented Software Development
Software Architecture
Software Engineering
Universal Asynchronous Receiver/Transmitter
Multithreading
Serial Peripheral Interface
State Machines

Job description

Semiconductor equipment software engineer focused on Embedded controls, finite state machines, and communication protocols such as I2C, SPI, UART., Key skills: Software engineering, C+, C#, Object-oriented programming, Object-oriented design, Multithreading, Finite state machines, Embedded controls, Hardware integration, Software architecture, Debugging, Semiconductor equipment. Responsibilities

  • Design, develop, troubleshoot, and debug software programs for enhancements and new products.
  • Implement new customer requirements and features in our existing application.
  • Maintain and enhance the existing code base by investigating and resolving problem areas.
  • Demonstrate, clearly communicate, and present solutions through clear documentation, flowcharts, and well-structured code.
  • Collaborate with cross-functional teams to design and develop software programs.
  • Provide technical guidance and mentoring for more junior engineers.
  • May visit customer sites to provide support, with travel totaling less than 10% of time.

Requirements

  • Bachelor's degree in Computer Engineering, Electronics, Mechanical Engineering with 12+ years of experience; or Master's degree with 8+ years; or PhD with 5+ years; or equivalent experience.
  • Knowledge of Object-oriented software implementation and design, including design patterns and finite state machines.
  • Knowledge of multithreading, including preemptive thread scheduling.
  • Knowledgeable with communication protocols such as I2C, SPI, UART.
  • Experience with distributed Embedded controls systems is desired.
  • Software development skills in C+ and C#.
  • Prior semiconductor equipment experience is preferred.

Apply for this position