Je pense que le C / C ++ souvent vu ne décrit pas vraiment mes compétences dans mon CV. Je prévois donc de le séparer en connaissances C ++ avancées et en compétences C médiocres.
Pensez-vous que cela prête à confusion pour le lecteur? Elle pourrait penser: "C est un sous-ensemble de C ++, alors qu'est-ce que ce gars essaie de me téléphoner?" Eh bien, ce que j'essaie de dire, c'est que j'ai fait plusieurs projets C ++ dans le monde réel alors que des projets C purs n'étaient qu'un passe-temps. Êtes-vous d'accord pour dire qu'un programmeur C ++ qualifié n'est pas nécessairement un gars qualifié en C ou pensez-vous que ce changement se fait facilement?
Réponses:
Vous avez posé tant de questions en une seule; permettez-moi d'essayer de répondre tout en les séparant. J'embauche de nombreuses personnes qui appartiennent à ce type de profil et, souvent, je dois participer à tant d'entretiens et rejeter des personnes, car elles n'ont souvent pas de réponse claire aux questions que vous avez posées.
Avoir une bonne maîtrise en C ou C ++ est-il suffisant pour vous qualifier pour l'autre programme?
Si vous êtes à un niveau supérieur en fait NON. c'est-à-dire si vous avez fait quelque chose comme 6 ans à faire de la programmation C ++ sur certaines applications d'entreprise de base, et maintenant j'essaie de vous mettre dans des systèmes embarqués qui sont tous en C - probablement que votre syntaxe de programmation et comment déboguer des trucs ne sont pas un problème. Mais si vous avez besoin de réfléchir à un problème, vous êtes certainement très en désordre. Cela est vrai de chaque côté de l'autre langue. Au fil des années, vous n'avez passé qu'un seul type de langue - moins facile à transformer sous une autre forme! Il ne s'agit pas de savoir si vous pouvez apprendre la syntaxe du langage, mais vous pensez réellement différemment lorsque vous êtes en C, C ++, Java, perl et Python. Pour étirer la question - le plus souvent - les gars C ++ et Java peuvent être utilisés de manière interchangeable, tout comme Perl, PHP, Phython. C est une race assez différente!
Si vous êtes un gars relativement jeune, il est probable que vous puissiez vous rattraper rapidement.
Cela signifie-t-il que j'ai des compétences plus élevées lorsque je connais le C ++ plutôt que le C?
Non. Le nombre de personnes capables de maîtriser le dépannage des systèmes de mémoire partagée est bien inférieur au nombre de personnes capables d'écrire un programme GUI décent à l'aide de VC ++ ou d'un cadre similaire.
Cela signifie-t-il que la connaissance de C (ou de la programmation de niveau le plus bas) est le plus haut niveau de réussite?
Pas encore! Ce n'est pas une contradiction. Cette fois, cela dépend du domaine que vous comparez. Si vous regardez la programmation de systèmes à l'intérieur du noyau Linux, ou quelque chose de très proche du matériel, la capacité de programmation en C est plus pertinente.Cependant, si vous écrivez un logiciel bancaire ou certains moteurs de règles métier - C ++ est un choix généralement naturel. Le fait est que votre véritable force n'est pas beaucoup la syntaxe du langage, mais la façon dont vous résolvez une classe de problèmes et vous ne pouvez qu'espérer maîtriser quelques catégories / domaines dans votre vie. Si vous mettez quelque chose dans votre CV, c'est ce qui compte vraiment.
Est-ce à dire que si je n'ai été qu'en C - je ne connais pas la programmation orientée objet?
Pas du tout. En fait, mon test décisif dans l'interview pour savoir si le gars est de fond C ou C ++ est de poser une question très simple - "Alors, pouvez-vous faire de la programmation orientée objet en C?" - le gars saute et dit - "Certainement NON!" il / elle est membre C ++. Le fait est que, lorsque vous écrivez vraiment du code très complexe comme du code multimédia, un système multi-thread, une pile de couches de protocole, vous pensez toujours comme du code objet - le compilateur C ne vous punit pas si vous êtes mal à encapsuler deux routines ou des objets - mais lorsque le système évolue qui continue de vous tirer - je crois parfois - il y en a beaucoup qui sont nés à l'ère de l'orientation des objets, assez souvent sont assez faibles sur la façon dont l'encapsulation est vraiment violée dans un code qui est à peu près rempli de classes et d'objets. Désolé j'ai fait une digression. Mais le fait est que c'est plus vos compétences en analyse de problèmes et en conception qui importent plus que vos seules compétences en programmation.
Cela signifie-t-il que je devrais mettre les compétences spécifiques au domaine en matière d'exposition et de conception de manière progressive?
Définitivement oui!
la source
Pour les gens qui comptent vraiment, non, cela ne devrait pas les confondre.
Quiconque sait quoi que ce soit sur la programmation C et C ++ du monde réel sait que, malgré leurs similitudes et leur histoire, la programmation de production dans l'un ou l'autre est le plus souvent un animal complètement différent.
la source
Personnellement, je trouve ça très ennuyeux quand les gens écrivent "C / C ++", car C et C ++ sont des langages très différents. Inversement, si je vois "C, C ++" ou "C ++ et C" sur un CV, cela m'impressionne sans fin. Malheureusement, presque tout le monde écrit "C / C ++", et cela signifie généralement "Je connais C ++, mais je peux faire C si je le dois."
De plus, je ne serais pas aussi précis sur le CV. Énumérez simplement les langages de programmation que vous connaissez, éventuellement dans l'ordre du plus compétent au moins compétent. Cela devrait vous faire passer le filtre des mots à la mode RH, puis vous pourrez expliquer lors d'un entretien technique quelles sont vos forces et vos faiblesses.
la source
C/C++
etJava/Javascript
comme s'ils étaient les mêmes est toujours dans deux ligues très différentes.Non, cela ne devrait pas prêter à confusion car C et C ++ bien que des racines similaires et partageant des racines similaires soient différentes dans le paradigme et l'utilisation. Ainsi, il devrait être séparé, et l'expertise devrait également être séparée. De plus, je pense que vous pouvez mentionner une expertise plus spécifique (comme GUI / FLTK ou d'autres bibliothèques que vous connaissez) avec les deux séparés.
la source
J'ai aimé votre phrasé: "J'ai fait plusieurs projets C ++ du monde réel alors que des projets C purs où juste un passe-temps"
Je le mettrais donc dans le jargon du CV:
C'est mieux si vous mettez des nombres à la place de "plusieurs" et "quelques". Pas besoin d'être exact, "plus de vingt" est un chiffre à cet effet.
La description du «niveau de compétence» est correcte , mais la description de «l'expérience» est correcte et claire.
la source
J'accepte que C et C ++ sont des langages différents et doivent être conservés séparément dans le CV. Même si C est (presque) un sous-ensemble de C ++, j'ai normalement un style de programmation très différent lorsque j'utilise C: je conçois différemment, je code différemment, etc. Je supprimerais même certaines fonctionnalités C comme #includes de C ++, ce qui renonce à la compatibilité descendante: ce sont simplement des langages différents.
Donc, mon conseil est de garder les deux langues séparées dans votre CV.
la source
Simplement, si la personne qui vous évalue avait la propension à penser "C est un sous-ensemble de C ++", elle est déjà confuse, et je suis sûr que votre explication de ce qui est écrit dans votre CV suffira à les impressionner.
la source