Le C et le C++ sont souvent indissociables, dès l'apprentissage du développement, la version C++ étant souvent présentée comme la version programmation objet du C. Même cousin, ces deux langages sont bien différents et possèdent chacun d'ardents défenseurs - Torvalds pour le C et Stroustrup pour le C++ pour ne citer qu'eux. Ces langages sont souvent associés à l'informatique embarquée. Mais l'éventail des possibles est grands : des systèmes distribués, en passant par les SI bancaires, des moteurs de recommandations en passant par la 3D des jeux vidéos ou encore l'imagerie médicale. Impossible de tous les citer !
Difficile de définir un poste pour ces langages aux multiples applications. Un développeur C/C++ peut commencer par travailler sur des applications backend ou embarquées. Dès les premiers projets, le dev devra maîtriser les lib standards - STL - et certains frameworks graphiques comme par exemple Qt.
Un profil plus expérimenté pourra maîtriser entièrement la chaîne de build et de déploiement d'une application embarquée ou backoffice. Il pourra prendre sa charge des problématiques plus large : le suivi des performances, le profiling d'application, la mise en place d'algo complexes par exemple. On lui demandera aussi de développer aussi les outils logiciels nécessaires pour pouvoir tester et intégrer ses développements logiciels.
Comme pour les autres langage, un profil plus sénior prend à sa charge les problématiques sur l'ensemble d'un projet ou d'une équipe. La gestion des performances, de l'architecture, de la sécurités sont quelques responsabilités qu'il porte. Il pourra par exemple gérer l’ensemble du cycle de développement et se porter garant de la qualité des livraisons logicielles.