Software Engineer I
Yamaha Motor Corporation, USA
About the Role
Yamaha Motor Corporation, USA is seeking a Software Engineer I to join our Marine team in Kennesaw, GA. This role focuses on the design and implementation of UI and network electronic system components for marine products, including Multi-Functional Displays (MFD) and Ethernet.
Key Responsibilities
- Understand and organize requirements, design software architecture, and code for both backend and frontend for embedded systems.
- Test code in collaboration with other UI software engineers and cross-functional teams.
- Write documentation to clarify and communicate system architecture, solutions, processes, requirements, and schedules to ensure delivery on key metrics.
- Conduct feasibility studies, risk assessments, and troubleshoot technical issues to meet design specifications.
- Select and guide external resources.
- Formulate and document software designs.
- Write documentation to communicate system architecture and requirements.
- Act as a key member of the product development process, from ideation to testing and evaluation.
- Performs other duties as required.
Requirements & Tech Stack
- UI software development for embedded systems (such as automotive)
- 0-3+ years of experience
- Fluent in spoken and written English with effective communication abilities.
- HTML5 Canvas Elements
- Proficiency in JavaScript and Web Sockets
- Nginx config
- Proficiency in Python programming languages and python CAN tool library
- Experience with React and creating UIs with React components
- Experience with CSS
- Experience with GitHub or similar Software version management tool
- Experience with documentation of UI Software specifications from a user experience point of view.
- Familiarity with marine products (e.g., fishing motorboat, sports boat, water vehicle).
- Business acumen and ability to formulate and explain business cases.
- Demonstrated effective communication and teamwork abilities, with experience in collaborating with international teams.
- SVG graphics
- Familiarity with Docker
- Knowledge and experience with CAN communication, J1939, and NMEA2000 protocols.
- Experience with documentation of UI Software specifications from a software architecture point of view.
- Understanding and experience with microcontrollers.
- Familiarity with Yocto.
- Excellent problem-solving and analytical skills with a safety-conscious mindset.
- Strong attention to detail and independence, prioritizing safety.
Qualifications
- Bachelor's degree in Computer Engineering, Electrical Engineering, Software Engineering, Computer Science, or a related field.