What are your thoughts when you see a job ad where they are looking for a C/C++ developer? Personally I have always wondered what ”C/C++” means. Do they know that C and C++ are different languages? That C is a procedural language and C++ is an object oriented language and writing modern C++ code is very different from writing C code. Or maybe they have different products, some written in C and some in C++ and they are looking for developers that know both C and C++?
Just the other day when I was browsing some code it hit me, this code is C/C++ code! What I was looking at was product code that was originally written in C. At one point in time the entire code base was pure C, no C++ at all. Then at some point it was decided to introduce C++ and continue developing the product using C++ instead of C. Of course, the existing code was not re-written from scratch but left as is.
Fast forward to today. The code is now a mix of C and C++ code. New code is mostly written in C++ but there are still some developers that work almost exclusively with the older C code and they seem to stick with C, even when extending the existing functionality. There are also some external libraries being used that are written in C and hence have C-style interfaces. Anyone that is going to work with this code needs to be a ”C/C++ developer”.