Embedded Systems Software Engineer
Posted on 07/14/2020
Vecna Robotics is looking for embedded systems software engineers who are eager to develop code to control our autonomous robotic platforms. Our logistics solutions automate and streamline the transport and flow of materials through some of today's largest materials handling facilities. You will join a diverse team that is dedicated to making real world impacts using advanced, creative technologies. As an embedded software engineer, you will focus on designing and writing code to support hardware controls, communications interfaces, and embedded intelligence of our robotic platforms. You will also support technology growth research and new product development. This is a full-time, salaried position.
Major Duties & Responsibilities
- Develop embedded software to support: real-time controls & logical operations of hardware systems (motor control, power systems, sensors, actuators); hardware interfaces & communications (SPI, I2C, CAN, UART, USB, Ethernet, EtherCAT); board-level peripheral & component library development; and third party safety system configuration.
- Develop software to test, validate, and verify embedded system & subsystem functionality.
- Document all aspects of design and testing results.
- Work within a cross-functional project team structure where you collaborate with hardware engineers, software engineers, project managers, and quality assurance test engineers.
Minimum Education & Experience
- Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, or equivalent engineering field and 2 to 5 years practical experience in embedded applications.
- Expert level skill in C and/or C++.
- Ability to troubleshoot prototype hardware.
- Ability to read, understand, and review electrical schematics.
- Proficient with standard electrical equipment including oscilloscopes, serial bus analyzers, soldering irons, and multi-meters.
- Experience with embedded software development, including testing, and troubleshooting.
- Demonstrated ability to work independently with minimal supervision within a fast-paced environment.
- Excellent documentation skills.
- Excellent written and oral communication skills.
- Some weekend and after-hours work might be required.
- Some travel to client sites might be required.
- Experience with PIC32 and/or ARM microcontroller development preferred.
- Knowledge of RTOS and real time systems preferred.
- Experience with Linux operating system preferred.
- Experience with CANOpen preferred
- Proficiency in Java or Python preferred.
- Experience with networking and scripting preferred.
- Experience with motor controllers preferred.
APPLY FOR THIS POSITION