Job summary
I am seeking an experienced Software Engineer to join an experienced Software Team. In this role, you will focus on designing and developing embedded software and desktop applications for both internal and external clients.
Key skills required for this role
Software, C++ Java, Embedded, Linux, Engineer, Developer
Important
UK Nationality and eligibility for UK Security Clearance at SC level are required.
Job description
Key Responsibilities:
1. Develop software applications from concept design to coding, ensuring robustness and fault management.
2. Collaborate with Mechanical/Electrical and Electronics engineers to ensure project success.
3. Maintain oversight of all software requirements and issues throughout projects.
4. Develop robust software with particular attention to fault management and health status monitoring.
5. Produce and maintain related documentation such as interface control documents and user manuals.
6. Assist with integration, commissioning, and problem resolution activities, including on-site support.
7. Understand customer technical needs and operational concepts to inform project requirements.
8. Work with project management and technical teams to identify risks, issues, and solutions.
Skills & Experience:
Essential:
9. Strong degree in a related discipline.
10. Understanding of embedded software design and associated hardware.
11. Experience in developing desktop applications with user-centric interface design.
Desirable:
Embedded Software:
12. Experience with C/C++ for embedded applications and microcontrollers.
13. Familiarity with STM32 processors and Keil uVision development tools.
14. Knowledge of communication protocols such as Ethernet, RS422/UART, CAN, SPI, etc.
15. Hardware interfacing experience including GPIO, ADC, DACs, etc.
16. Understanding of motor control principles is a plus.
Windows/User Interfaces:
17. Proficiency in QT and QT Creator for multiplatform development in C++.
18. Familiarity with Visual Studio C++ and C#.
19. Experience in low latency programming techniques and networking (TCP/UDP).
General Software:
20. Use of source control tools like SVN and GIT.
21. Familiarity with Jira and Confluence for software requirements and task management.
22. Experience with unit testing tools and static code analysis.
Personal Attributes:
23. Demonstrates values of teamwork, integrity, excellence, and courage.
24. Highly organized with a methodical approach and attention to detail.
25. Ability to work independently and in teams effectively.
26. Flexible, conscientious, and diligent attitude.
27. Excellent communication and interpersonal skills.
28. Share
manages this role
Matchtech is a STEM Recruitment Specialist, with over 35 years’ experience