Job DescriptionReporting to the Embedded SW Manager, the SW Embedded Engineer is a member of the Scan Engine team whose expertise is the development of miniaturized and highly trustable cameras to be integrated into Datalogic products. Scan engines are equipped with illumination and aiming systems and imaging optics, may include autofocus systems and range finder to estimate distance to target. The scan engine hardware can be equipped with micro-controllers or programmable logic to control over the camera and communicate with a host system.
The Embedded SW Engineer shall operate in a multi-disciplinary team-work environment, collaborating with Digital HW, Optical and Mechanical engineers to deliver new products and maintain current scan engines. Collaboration with colleagues from other departments such as Program Management, Quality and Reliability, Advanced Manufacturing Engineering, Product Marketing, Technical Support, other R&D teams is part of the standard duties. Good teamwork capabilities and willingness to develop positive relationships with technology partners and colleagues are highly needed.
Main Responsibilities:Develop New Products and Support Products Lifecycle - Understand technical documentations and literature like such as schematics and hardware component datasheets.
- Develop firmware for MCUs (Microcontroller Unit); Develop bootloaders, drivers for micro-controller peripherals.
- Perform system debugging via In-Circuit-Debug or Emulator, Oscilloscope, Protocol analyzer, custom equipment and tools related to video streaming and image capture.
- Support design & product validation by means of specific tests, contribute to scan engine performance characterization
- Run competitive benchmarking and intellectual property analysis, perform competitor product analysis.
- Support integration of scan engines into mobile computers, handheld readers or other industrial devices.
- Contribute to define requirements related to SW development and to product features, support SW team leader on identifying technical solutions and on estimating development time for specific tasks. Contribute to design reviews.
- Problem solving in addressing issues raised by users in the field.
- Review test results and root cause analysis. Resolves highly complex technical issues.
Requirements: Education: Master Degree in Electronic Engineer or Computer Science.
Languages: Italian / Fluent English
Experience: At least 3 years of experience in embedded software development. The embedded SW engineer must have a good familiarity with communication interfaces (e.g. RS232, USB, I2C, SPI ect etc), mastering C language, understanding C++ programming. Mastering micro-controllers, interrupts and real time kernels, timers, signal acquisition via analog to digital conversion and signal conditioning, development of real-time applications.
Technical Skills - Experience in hands-on development and troubleshooting on embedded targets
- Solid programming experience in low level programming languages (C, C++)
- Basic knowledge of digital system design principles
- Experience in embedded systems design with preemptive, multitasking real-time operating systems, CPU performance governor, security models.
- Familiarity with software configuration management tools, defect tracking tools, and peer review; Understand electrical schematics