Aep Advanced Engineering Project S.R.L logo

C++ Software Engineer/Developer (Middle Level)

Primary stack

C++AndroidLinuxGitShell Scripting

Nice to have's

PythonUnit TestingAgileAI

Job description

About the Position

C++ Software Engineer/Developer (Middle Level)

We are seeking a C++ Software Engineer/Developer with at least 3 years of professional experience to join our development team.

The candidate must have proven experience and a strong focus on code quality, to work on software applications and components in embedded, desktop, and mobile environments. The candidate will be involved in the development of complex, mission-critical software modules based on C++, Qt, and Android, with a particular focus on multithreading programming.

The ideal candidate must demonstrate good technical autonomy, functional analysis skills, and mastery of integration logic between distributed components.

Responsibilities

  • Development and maintenance of software applications in C++, including:

    • Design and implementation of core components
    • Performance optimization and advanced memory management
    • Integration with system or third-party libraries
  • Development of cross-platform interfaces and applications based on Qt, including:

    • Use of Qt Widgets
    • Development of reactive interfaces through QML / Qt Quick
    • Integration of UI components with complex application logic
  • Implementation of software components for Android

  • Development and maintenance of automation scripts and tools, including:

    • Creation of bash/shell scripts to automate build, deployment, and toolchain
    • Creation of internal utilities to improve the team's workflow
  • Active contribution to the definition of technical specifications, including:

    • Analysis of functional and non-functional requirements
    • Writing technical documentation (architectural diagrams, API contracts, design documents)
    • Participation in architectural and design reviews
  • Structured collaboration with development, QA, and architecture teams, including:

    • Participation in code reviews and pair programming
    • Constant alignment with QA for test definition and feature validation
    • Interaction with the architecture area to ensure consistency with design standards

Requirements

  • Solid academic background. Preferably a degree in Computer Engineering, Computer Science, or equivalent.

  • 3-5 years of professional experience in software development, gained in structured contexts focused on producing complex, robust, and maintainable solutions.

  • Excellent knowledge of the C++ language (standard C++11 or later), including:

    • Advanced memory management (RAII, smart pointers)
    • STL and modern containers
    • Exception handling
    • Cross-platform compilation
  • Proven experience in development with the Qt framework, with particular familiarity with:

    • Qt Widgets
    • QML / Qt Quick for modern reactive interfaces
    • Management of signal/slot, Qt threading, networking, and multimedia modules
  • Experience in software development for Android, including:

    • Cross-compile compilation (NDK)
    • Use of mobile toolchains
    • Management of resources and performance optimization on mobile devices
  • Excellent knowledge of the Linux environment, in particular:

    • Advanced use of the shell
    • Management of permissions and filesystem
    • Compilation with GCC/Clang toolchain
    • Debugging with ad-hoc tools (e.g., gdb, valgrind, strace)
    • Management of OS-level processes and logging
  • Proficiency in using at least one scripting language (bash, shell, or equivalent) to automate build, test, environment maintenance, or deployment activities.

  • Experience in multithreading programming, including:

    • Management of concurrency primitives (mutex, semaphore, condition variable)
    • Thread-safe design of complex components
    • Debugging of race conditions and deadlocks
  • Experience in development on embedded systems, with skills in:

    • Management of limited resources
    • Interfacing with hardware components
    • Timing, real-time constraints
    • Cross-compilation and deployment on dedicated targets
  • Familiarity with software configuration management tools, such as:

    • Git (branching strategy, merge, pull request)
    • SVN for managing legacy repositories
    • Use of collaborative workflows and versioning best practices

Nice to Have

  • Knowledge of the Python language, useful for advanced scripting, automation of processes, generation of auxiliary tools, and development of small support modules for the software infrastructure.

  • Experience in executing unit tests, with particular familiarity with C++ testing frameworks such as:

    • Google Test (gTest)
    • Qt Test including aspects such as mocking, parameterized tests, coverage, and integration of tests in build pipelines
  • Familiarity with Agile methodologies (Scrum or Kanban), including:

    • Management of the workflow through Jira
    • Active participation in sprints
    • Code review
    • Ability to collaborate in iterative cycles focused on continuous delivery
  • Knowledge or use of AI-based tools

  • Knowledge of build and configuration tools, such as:

    • CMake, for cross-platform management of complex projects, modularization, and advanced configuration
    • qmake, for legacy Qt projects or specific to the framework

We Offer

  • Contract: CCNL Metalmeccanica Industria
  • Salary: €35,000.00 – €45,000.00 per year, based on experience
  • Variable: MBO Bonus linked to company/site performance indicators (CSI)

About the Company

AEP is committed to building an inclusive work environment where people of every background are treated fairly and respectfully. We welcome applications from all qualified candidates, regardless of gender, age, ethnicity, disability, sexual orientation, or any other characteristic protected by applicable law (D.Lgs. 198/2006).

Only applications accompanied by authorization to process personal data under current legislation will be considered.

Pursuant to current legislation, this job offer is intended for both sexes. (L 903/77)

© Aep Advanced Engineering Project S.R.L. This job description was sourced from the employer's public career page. TheJob is not the employer — we index the posting and route candidates to the source. All content rights and hiring decisions belong to the employer.

More at Aep Advanced Engineering Project S.R.L

All 5 roles

Popular searches