Software Engineer C++

Scope

As Software Engineer, you will develop software modules and interfaces (API). Taking advantage of your experience, you participate in the different steps of the development process: analysis, technical specification, design, development, unit testing, technical documentation, and maintenance. You will be able to work closely with peers in a fast-paced dynamic environment and you will ensure the robustness, reliability, scalability, testability of all building blocks.

 

Job Description

  • Analyze and review product requirements, and discuss the technical feasibility
  • Build technical design proposals
  • Develop new software components or modify existing ones
  • Participate to peer code reviews
  • Plan, define and perform unit testing
  • Create or maintain technical documentation
  • Integrate individual software components developed by yourself and other members of the development team
  • Solve defects reported in the defect tracking system
  • Maintain existing applications
  • Identify risks and discuss them with the Quality Control department for building adequate test plans
  • Make work estimates for the tasks assigned to you
  • Plan, track and report your daily work and your assigned tasks to your direct manager
  • Follow the EVS software development process (Source Control Management, Defect Tracking, Coding Rules, Continuous Integration)
  • Identify and propose process improvements
  • Coach and guide junior team members

 

Profile

  • Engineer, Bachelor’s or Master’s degree in Engineering or Computer Science (high school or university)
  • Minimum 3 years of professional experience
  • Knowledge or experience in Object-Oriented Design and Programming in multithreaded environments
  • Working experience in C++ on the Linux or Windows platforms

 

The following experiences are not mandatory, and will be considered as an asset :

  • Working experience in embedded environments
  • Knowledge of Qt/QML
  • Knowledge of Web Services and client-server applications
  • Knowledge of networking and streaming protocols
  • Practical experience in Agile/Scrum frameworks

 

Soft skills :

  • Achieve high-quality results through thoughtful analysis and planning; target driven and result oriented
  • Excellent analytical skills, strong object-oriented design skills
  • Focus on quality, detail-minded, willing to take care of customer point of view
  • A critical but constructive mindset focused on delivery constraints and pragmatism
  • Open for changes and continuous learning
  • Capable of executing tasks autonomously, of planning and communicating planning and progress, of getting help where needed
  • Show initiative, are curious and communicate well about initiatives
  • Good written and verbal communication skills, share information actively; respond properly, report on-time; accept criticism and other opinions, address criticism constructively
  • Excellent team player
  • High-stress resistance; do not give up in crisis situations; do not lose control under pressure

 

Languages :

  • Fluent in French or English
  • Working knowledge of English
     

Offer

You will benefit from working in a friendly, lively environment having ambitious commercial objectives. Our dynamic and young team brings the best out of motivated potentials. In addition, you will receive a competitive salary and a range of other employee benefits.