Magicard provides identity management, credentialing and issuance solutions. Headquarters in the UK, Magicard has operations across the globe. Magicard products are trusted by thousands of organisations and governments throughout the world to issue millions of secure identity credentials every year.
Find our open positions below:
Embedded Software Engineer
Reporting to the Software Team Leader, the Embedded Software Engineer will, as part of a team of development engineers, be responsible for software development activities across existing and planned new Magicard card printers.
Required skills and experience
- Strong experience in developing code in C and C++ for embedded microcontrollers.
- Experience of writing PC based applications (console and GUI) that interface with an embedded device.
- Proven experience in embedded systems design with pre-emptive, multitasking real-time operating systems.
- Ability to read schematics and component data sheets.
- Ability to collaborate with team members across a multi-disciplined engineering group.
- Ability to work independently with minimal supervision and show a high level of ownership.
- Familiarity with software configuration management tools, defect tracking tools and peer review.
- Strong personal organisation, documentation and writing skills.
- Understand how to test and debug embedded software.
- Degree in computer science, engineering, mathematics, or science.
Desired skills and experience
- Development experience that would be transferable to the printer domain: motor control, sensor data acquisition, thermal print-head management, etc.
- Experience using ThreadX, FreeRTOS and embedded Linux would be an advantage.
- Experience with ARM based microcontrollers, specifically STM32, TI AM335x and TI AM1808.
- Use of these tools: SVN, Git and JIRA.
- Use of these technologies: I2C, SPI, RFID (ISO 15693), USB, Ethernet.
- Experience of ‘modern’ C++ (C++11/14)
- Application development using Qt.
Key responsibilities of the role
- Design and implement software of embedded devices and systems from requirements to production and commercial deployment.
- Design, develop, code, test and debug system software.
- Review Code and Design.
- Perform code maintenance on existing designs.
- Analyse and enhance efficiency, stability and scalability of systems resources.
- Integrate and validate new product designs.
- Support software QA activities.
- Provide post production support.
- Interface with hardware design and development.
- Assess third party and open source software.
- Mentor junior team members.
The role is being offered on a full time basis consisting of 37.5 hours per week. We have a benefits scheme in place where you can purchase private medical cover, private dental cover, private pension fund and additional holiday to name just a few. There is also on-site parking available.
To apply for the role please send through a copy of your CV to – firstname.lastname@example.org
We are always on the lookout for talented individuals to join our engineering, sales, and production teams at our UK HQ, or in our global offices. Even if there isn’t a role advertised specifically for you, we would still like to hear from you at – email@example.com