Responsibilities
1. Works with the project manager, team leader, and software team to plan and manage delivery schedules
2. Acts as the single point of contact for all issues related to a particular software module development, high-level design, and delivery, and as such, works with all other engineering disciplines.
3. Evaluates and schedules all changes in the scope of the module design and delivery
4. Performs modules maintenance, modifications, and enhancements to new/existing systems through programming, testing, and documenting.
5. Works on developing services and applications, working as part of embedded firmware for custom hardware
6. Follows, recommends, and implements software processes
7. Provides technical directions to others as necessary
8. Analyze and resolve technical and application problems
Minimum Job Requirements
Education & Experience
9. University degree in Computer Science, Engineering, Electronics, or a related field
10. 3+ years of professional experience in C++ development, with a focus on Qt and QML.
11. Overall software development experience of at least 8 years.
12. Experience in software development process implementation
13. Experience with software development tools (configuration management, design, emulation, debugging, compilers, test, etc.)
14. Experience with GNSS and/or Optical Survey will be a plus
15. Experience with software development for Android is needed for the role
Knowledge, Skills & Attributes
16. Strong understanding of object-oriented programming and software design principles.
17. Knowledge of algorithms, data structures, and multithreading concepts.
18. Familiarity with cross-platform development and GUI frameworks.
19. Expert knowledge in C++, Standard Library, Boost
20. Knowledge of Java and native Android APIs, and iOS development will be a plus
21. Understanding of CI/CD pipelines and automated testing
22. Knowledge of bug tracking systems ( JIRA) and version control systems.
23. Knowledge of Docker is a plus
24. A good command (both written and speaking) of the ENGLISH language is required for the job
Working Conditions
We offer a balanced work setup that combines in-person collaboration with flexibility
25. Office presence: at our Bologna office (full-time)
26. On-site activities: Regular visits to our Test Site in Concordia sulla Secchia (MO) for demonstrations and testing
27. Remote work options (Smart Working) are available to support focus and flexibility
We’d love to hear from you! Please send us your application and the earliest date you could join our team.