Lingue su un curriculum: è meglio mettere "C / C ++" o "C, C ++"? [chiuso]


46

Mi sto laureando tra un paio di settimane e il mio curriculum (come previsto) elenca le lingue con cui ho avuto esperienza. In precedenza ho messo "C / C ++" , ma allora non ho avuto che molta esperienza con queste due lingue come faccio ora.

Ora che ho imparato formalmente queste due lingue, è diventato evidente per me (e per chiunque conosca veramente queste lingue) che sono simili e allo stesso tempo completamente diverse. Certo, la maggior parte del codice C è codice C ++ compilabile, ma la sintassi e l'incorporazione delle funzioni di libreria è praticamente dove finiscono queste somiglianze. Nella maggior parte dei problemi non banali, è probabile che la soluzione C ++ desiderabile sarà diversa dalla soluzione C desiderabile.

La mia domanda:


I recruiter prenderanno atto o si preoccuperanno se si inserisce "C / C ++" anziché "C, C ++" ? Presumeranno una mancanza di conoscenza del funzionamento o a causa dell'inclusione della prima forma, o forse vedranno l'inclusione della seconda forma come un potenziale "riprendi beefer" (elencandole come 2 lingue, anziché "una") ?

Inoltre, per i lavori a cui sei stato interessato che erano particolarmente interessati a questi due linguaggi, il processo di intervista includeva domande sulle differenze tra la programmazione C e la programmazione C ++ (quindi, sulle tecniche di programmazione attuali, non solo sui paradigmi extra in quest'ultimo )?


34
Si spera davvero che non si riduca a distinzioni come questa.
Kasterma,

19
Perché hai taggato la tua domanda come "c" e "c ++" separatamente?
dan04,

7
Si riduce a distinzioni come questa.
quick_now

3
Penso che questo vada oltre il pedante e nel regno dell'anal-ritentivo. L'unico motivo per cui non voterò per la chiusura è perché penso che Kevin sia sinceramente curioso.
Rei Miyasaka,

4
A mio avviso, scriveresti "C / Java"? Potrebbe essere corretto utilizzare i separatori di barra anziché le virgole, ma se non si scrive "C / Java", perché scrivere "C / C ++"?
Steve314,

Risposte:


62

C, C ++

Non mi piace C / C ++, perché sebbene C ++ sia tecnicamente un superset di C, per farlo bene, devi fare le cose in modo diverso. C / C ++ ti fa sembrare qualcuno che conosce C e sa che anche un compilatore C ++ accetta C.


29
Anche tecnicamente non lo è. Li separerei anch'io.
Tobu,

7
Quando leggo C / C ++ sto pensando ai programmi C ++ usando #define, malloc () / free () e tutte le cose che hanno funzionato in C, e come abitudine, sono usate anche in C ++.
Oliver Weiler,

8
Penso che tecnicamente C ++ sia un superset di un sottoinsieme di C.
Ian G

29
Tutto è un superset di un sottoinsieme di C.
Dario,

1
@JBRWilkinson Cosa succede se C è 0? Inoltre, non ci sono punti di sequenza definiti in quell'istruzione. È un comportamento definito compilato.

35

Di solito scrivo C / C ++ come un'abitudine, ma :

  • qualche reclutatore pedante potrebbe pensare che tu pensi erroneamente che siano gli stessi (improbabile ... spero),
  • c'è una maggiore probabilità che C, C++venga analizzata agli elementi Ce C++rispetto a C / C ++ ... che potrebbe importare quando i recruiter provano ad abbinare il tuo profilo ai requisiti per un ruolo.

Quindi prova ad avere forse C / C ++ nella tua descrizione generale e poi C e C ++ separati altrove.

Questo è solo un consiglio, non ho prove concrete di seguirlo, ma (molte) agenzie di reclutamento hanno un approccio abbastanza orientato alle parole chiave.

Una volta superata l'agenzia di reclutamento, il vero reclutatore nella tua azienda target (si spera, se non filtrato da personale non tecnico delle risorse umane) saprà che non implica necessariamente che C e C ++ siano nello stesso paniere, quindi io pensarlo davvero solo come un problema di analisi.

Lo stesso vale per le varianti di Java e le sue piattaforme e specifiche, che hanno anche avuto il cattivo gusto di cambiare le convenzioni di denominazione nel tempo per finire con: Java SE, JavaSE, JSE, J2SE, Java EE, JavaEE, JEE, J2EE, ecc. ..


17
+1 per l'angolo di analisi. La maggior parte dei recruiter non avrà idea della distinzione tecnica tra C e C ++.
George Marian,

@George: figuriamoci C, C + [sic] e C ++
Nick T

@George: vero, purtroppo. Hai anche il caso del reclutatore che pensa di non essere adatto per un ruolo perché hai elencato JEE anziché J2EE, o viceversa ... Questo è un altro caso di qualcosa che cerco di avere con entrambe le occorrenze del mio curriculum (JEE nell'elenco delle competenze, J2EE per progetti in cui la terminologia era J2EE all'epoca). Fastidioso.
Hayylem,

28

Per me, "C / C ++" è un segnale fortemente negativo.

Bjarne Stroustrup scrive :

Non esiste un linguaggio chiamato "C / C ++". La frase è di solito usata da persone che non hanno idea della programmazione (ad esempio personale delle risorse umane e manager scadenti). In alternativa, viene utilizzato da persone semplici che non conoscono C ++ (e spesso neanche C). Quando utilizzato dai programmatori, indica in genere un atteggiamento "C ++ è C con alcune utili e molte inutili funzioni complicate aggiunte". Spesso questo è il punto di vista delle persone a cui piace scrivere le proprie stringhe e tabelle hash con poca conoscenza della libreria standard oltre a printf e memcpy. Ci sono persone che si attengono a un sottoinsieme limitato di C ++ per ragioni perfettamente valide, ma (per quanto ne ho notato) non sono le persone che dicono "C / C ++".


4
@Kevin: non è un appello all'autorità se il ragionamento è spiegato chiaramente. Stroustrup certamente non fa appello all'autorità, e il ragionamento per la sua risposta è abbastanza ragionamento da non gradire "C / C ++" - indipendentemente da chi lo abbia detto.
Billy ONeal,

2
@Kevin: scusami se non ero chiaro, ma non ho incluso la citazione di Stroustrup come un appello alla sua autorità, e non è perché l'opinione di Stroustrup che considero "C / C ++" come un segnale negativo. Ho appena usato la sua spiegazione perché, beh, ero troppo pigro per scrivere la mia.
Thomas Padron-McCarthy,

"La frase è di solito usata da persone che non hanno la minima idea della programmazione (ad esempio personale delle risorse umane e manager scadenti)" - Sembra un buon motivo per usare C / C ++ per me. Lo scopo di elencare le tecnologie sul tuo curriculum è convincere le persone delle risorse umane a trasmetterle al team, che guarderà principalmente alla tua esperienza.
Sean McMillan,

C / C ++ è C con cout per l'output piuttosto che printf
CashCow

Considero sfortunato l'atteggiamento di Mr. Stroustrup, nonché la divergenza tra C e C ++. Mentre il codice scritto in modo orientato agli oggetti dovrebbe evitare C-ismi simili malloc, alcune delle funzionalità fornite da C ++ potrebbero essere utili per programmi scritti al 99% in C. Alcuni dei software che ho scritto sono progettati in modo da poter compilare come codice C per un piccolo processore incorporato o come codice C ++ per scopi di "emulazione" sul PC. Anche il codice che scrive direttamente nei registri I / O può essere eseguito senza modifiche sul livello di emulazione, poiché i registri I / O hanno sovrascritto ...
supercat

20

Se si desidera rimuovere qualsiasi ambiguità è sufficiente puntarli:

  • C
  • C ++

Questo coprirà, tutti gli angoli compreso qualsiasi analisi.


8
Se avessi fatto un elenco puntato di ogni lingua e tecnologia che avessi usato, occuperei l'intera pagina e poi alcuni.
Andrew Arnold,

1
@Andrew: pensi che ti aiuterebbe ad ottenere un lavoro che davvero desideri?
JBR Wilkinson,

3
@JBRWilkinson - Certo che no. Sto dicendo che tecnologie di proiettile del genere non sono una buona cosa.
Andrew Arnold,

1
Se i tuoi due maggiori punti di forza sono C e C ++ e non ti dispiace se il tuo prossimo lavoro utilizza l'uno o l'altro, qual è il problema?
JBR Wilkinson,

@Andrew - probabilmente non dovresti elencare tutto quello che sai - dovresti indirizzare la tua applicazione per quel particolare lavoro, ed è improbabile che ci siano più lingue / tecnologie rilevanti per un lavoro di quanto tu possa ragionevolmente proiettare. C'è anche quello che DocBook chiama un semplice elenco, IIRC - una sorta di mini-tabella di elementi - se devi elencare più di una mezza dozzina.
Steve314,

18

Se scrivi C / C ++ sembra che tu non differenzi molto tra i due. Quindi scriverei sicuramente C, C ++


13

Metti ciò che sei meglio all'inizio e da solo, e sii onesto. Assumo sviluppatori C ++ esperti e la mia esperienza è che le persone che elencano "C / C ++" sono programmatori C di buon livello e di solito programmatori C ++ marginali o principianti. Questa non è pedanteria, è il risultato di centinaia di interviste che il mio gruppo e io abbiamo fatto. Se elenchi "C ++, C, java, perl", continuerò a leggere i tuoi progetti, esperienza e formazione. se elenchi "perl, java, C, C ++", ti consegnerò al ragazzo in fondo al corridoio che assume il nostro team perl. Se elenchi "C / C ++", devi avere delle esperienze davvero forti che erano chiaramente al 100% in C ++.


9

Probabilmente non importa

Almeno non per i reclutatori. La maggior parte dei recruiter li tratterà probabilmente come la stessa cosa o almeno una variazione della stessa cosa. I più tecnicamente avanzati probabilmente non prestano attenzione a un dettaglio così piccolo.

Tuttavia, mi preoccuperei di "riprendere la carne" se avessi una descrizione per ciascuno. Se includi una descrizione per le lingue che elenchi, elencale insieme e includi una frase parziale per ciascuna.


Non sono d'accordo - con lingue come A +, B, C, C ++, C #, Obj-C, D ed E in giro, è meglio essere chiari per un recruiter.
JBR Wilkinson,

1
@JBRWilkinson Sto parlando in particolare di trattare "C, C ++" e "C / C ++" come la stessa cosa, non "C" e "C ++" come la stessa cosa. In altre parole, la maggior parte dei recruiter non farà distinzione tra l'uso di un ,o /. Questo è ciò con cui non sei d'accordo?
Nicole,

Non sono d'accordo: è importante per le persone che prendono la decisione se ottenere o meno un colloquio.
quick_now

@quickly_now - In che modo conta ,o /?
Nicole,

@Renesis - vedi la mia risposta più lunga.
quick_now

8

Inseriresti Java / C # nel tuo CV? O Perl / Python? (Java / Javascript sarebbe interessante)

Probabilmente no, quindi perché C / C ++?

Ovviamente potresti semplicemente perché le specifiche del lavoro richiedono C / C ++ e se non le scrivi esattamente in questo modo verrebbero filtrate per non contenere le parole d'ordine valide. Proprio come devi assicurarti che parole come Agile compaiano oggi nel tuo CV.


5

Quando il tuo curriculum si spegne colpisce alcuni posti: l'agenzia di reclutamento / head hunter (se ce n'è uno), il responsabile delle assunzioni dell'azienda, il capo squadra dell'azienda ... e così via.

Un curriculum può facilmente passare attraverso 3-4 mani e OGNI UNO ha la capacità di scrivere una nota dicendo "perde punti per non conoscere X". O semplicemente lanciarlo direttamente sulla pila degli scarti. Una volta annotato, il gioco è fatto ... il curriculum è effettivamente morto. Hai perso.

Ricorda che trovare lavoro è una competizione. Non stai solo facendo un bel curriculum, devi essere chiaro, conciso e avere qualcosa che ti distingua dal prossimo. In questo modo ottieni il lavoro e l'altro ragazzo no.

Le piccole cose contano. Quando ho preso in considerazione 2 candidati che altrimenti sembrano identici, quello che scrive: "C / C ++" mi dà fastidio perché ha banalizzato la differenza. Chi scrive: "C / C ++ / C #" va nella pila degli scarti senza ulteriori considerazioni. Perché la persona che scrive quegli 8 personaggi pensa che trasmetta tutto e questi sono intercambiabili. Non sono.

Guardo anche l'esperienza pertinente e i progetti completati. Quando impiego qualcuno, il mio rilevatore di cazzate gira a tutta forza perché tutti quelli che si trovano nella porta che stanno cagando stanno solo sprecando il tuo tempo prezioso. Il più economico diserbo è in fase di ripresa.

Quindi, se conosci bene qualcosa, chiariscilo, rendilo distinto. Fatti distinguere dalla massa.

(A titolo di analogia, forse un po 'vecchio stile. Se conosco Pascal e Ada - due lingue con un bel po' in comune (e sì, lo so molto di diverso). Ti aspetteresti che scrivo Pascal / Ada? Se io Conoscere Pascal e Delphi, scriverei Pascal / Delphi. Delphi potrebbe essere basato su Pascal, una volta, ma le estensioni OO e le enormi librerie rendono il confronto uno di gesso e formaggio.)


Punto interessante Una cosa da apprezzare è l'intervista anti-loop : anche i buoni candidati hanno intervistatori che non li assumerebbero mai. Non tutti i candidati che scrivono lo C/C++fanno per banalizzare la differenza, ma sono quella persona per te perché la vedi così. Potrei non essere d'accordo con te e vedere C, C++come cercare di allungare il "conteggio" delle lingue che conoscono. Comunque, una buona prospettiva e questo mi rende questa domanda ancora di più - mi piace entrare nei dettagli psicologici delle interviste / assunzioni.
Nicole,

Ho scritto un'altra lunga risposta sull'assunzione ... programmers.stackexchange.com/questions/3892/… e programmers.stackexchange.com/questions/19278/… Probabilmente vale la pena di leggere anche quelli. Sono fermamente nel campo di Joel-on-software: è meglio assumere nessuno che la persona sbagliata. La persona di cui non sei del tutto sicuro ... non dovrebbe essere NESSUN NOLEGGIO.
quick_now

Contrappunto; non mi disturba mai un solo colpo. L'elenco dei linguaggi di programmazione, non importa quanto presentato, è proprio questo: un elenco. Non rifiuterei nessuno per aver usato / invece di, certo, guardi la loro esperienza più dettagliata e se sembra che C / C ++ significhi "una volta non imparo un po 'di C", allora, respingili. Ma non era proprio questa la domanda.
Errant

con questo meccanismo di filtraggio , sono totalmente fregato, nella sezione lingue ho scritto "C ++ / Java" - oops ...: D
Nim

3

Il ruolo di un curriculum è quello di portarti al colloquio. Al giorno d'oggi, questo spesso significa colpire le parole d'ordine che il recruiter e le risorse umane stanno cercando, e quindi impressionare il responsabile delle assunzioni.

A tal fine, li elencherei separatamente. Potrebbe non essere importante per le risorse umane o il reclutatore, ma è probabile che il responsabile delle assunzioni se ne accorga e l'unico modo per lui è importante se ti fa male usare "C / C ++".

Detto questo, non dovresti avere paura di adattare il tuo curriculum al lavoro, e se nella descrizione è indicato C / C ++, elenca C / C ++ e trova anche il modo di elencarli separatamente.


2

Mi dispiace, ma non pensi che questo sia davvero spaccare i capelli? Quando sto assumendo un programmatore, do solo una breve occhiata alla lista delle lingue perché di solito sto assumendo una lingua specifica. Inoltre, solo perché conosci una lingua non significa che conosci veramente tutte le sue librerie, le API e sai come usarle.

Quello che mi interessa di più è di solito l'esperienza di lavoro o qualsiasi progetto su cui potresti aver lavorato. Conosco molte lingue ma ho svolto un lavoro serio solo in due o tre di esse. Trascorrerei più tempo a evidenziare i tuoi successi e la tua esperienza piuttosto che quante lingue conosci. Solo i miei $ 0,02.


1
Sì, ma se ricevi i curriculum tramite un'agenzia di reclutamento, potrebbe, poiché molti non hanno davvero NESSUNA VECCHIA cosa stanno cercando. Abbastanza triste, ma è così. Ovviamente se assumi direttamente, quindi non hai questo problema, questo è vero. Ma sì ... sta davvero dividendo i capelli.
Hayylem,

2

Una barra è tradizionalmente una scorciatoia per e / o. Conosci C e / o C ++? Penso che tu conosca C e C ++. Scrivilo così.


1

Non avrei una sezione che elenca solo le rivendicazioni di conoscenza della lingua.

Un esempio: quando ero al college ho usato C per esprimere meglio quello che originariamente era un programma scritto in Assembler 80286 con annotazioni MASM, mentre usavo la asmfunzione per includere le cose che dovevano essere in Assembler. Per tutto il resto ho scelto C ++ o un precursore di Delphi chiamato "Object Pascal", che è stato insegnato in quel college.

In un curriculum che potrebbe assumere la forma "Acme University - 1993-1995 - Programmatore di rete \ In qualità di studente dipendente del dipartimento MIS, ho sviluppato utilità di monitoraggio della rete TCP / IP di basso livello per l'utilizzo da parte di MIS, utilizzando Assembler, C e linguaggi di programmazione C ++ ".

I reparti HR che usano i curriculum riprenderanno e selezioneranno o rifiuteranno il tuo curriculum, ma la rivendicazione di cui sopra apparirà nel contesto della tua esperienza reale ed esisterà come una frase in linguaggio naturale che agli umani piace leggere. Una cosa del genere dice molto di più di un elenco di parole d'ordine.


Non potrei essere più d'accordo. Ho ottenuto il mio attuale lavoro grazie alla mia esperienza nell'applicazione della mia conoscenza generale ai progetti del semestre. Ho semplicemente descritto le mie responsabilità.
Ramhound,

Ma la maggior parte degli intervistatori (non parlo di curriculum-robot), cioè gli intervistatori di F2F potrebbero non impiegare il tempo necessario per passare attraverso le frasi in linguaggio naturale. Sarebbe più prudente elencare brevemente le tue lingue e aggiungere una sezione separata che elenchi i progetti che hai intrapreso.
abhicantdraw,

Un curriculum di una pagina ben formattato non sarà un lavoro ingrato per qualsiasi intervistatore degno di nota; il documento dovrebbe essere un punto di riferimento per l'intervista. Se il tuo intervistatore non ha nemmeno letto molto, metti in discussione la qualità dell'azienda a cui ti stai candidando. E in caso di dubbio, grassetto le parole chiave.
Rob Perkins,

1

Immagina un pezzo di codice

int class = 0;

è un codice C legale, ma non verrà compilato con il compilatore C ++, quindi sono due lingue. Inserisci C, C ++.


1
Questo è un cattivo esempio, anche se ciò che si intende non è troppo male. Che ne dici di una differenza più grande, come la MyStructureType *ptr = malloc(sizeof(MyStructureType))compilazione in C ++ ma non in C? Questi esempi che usano semplicemente le parole chiave C ++ sono IMHO troppo inventati.
Billy ONeal,

0

Per la stragrande maggioranza dei datori di lavoro semplicemente non fa alcuna differenza (questo piccolo elemento specifico comunque). Per quelli che lo fanno ... beh, probabilmente non sono comunque adatti a te.

Il tuo elenco di linguaggi di programmazione è comunque insignificante: non preoccuparti troppo, elenca semplicemente i linguaggi che puoi affrontare. I reclutatori sono in genere abbastanza intelligenti da leggere la tua esperienza, che dopo tutto è un aspetto importante.

Sicuro; alcune persone rifiutano (o scelgono) i candidati al di sopra di tutti. Questo è proprio quello che succede. Ma può essere su qualsiasi banale dato.

Basta scrivere un CV chiaro e decente e questo è tutto ciò che puoi fare :)


0

L'ultimo. C, C ++.

Quando i curriculum vengono scansionati su un computer in modo che le risorse umane possano elaborarli nel modo più efficace, se sono alla ricerca di parole chiave, potrebbero perdere C / C ++ se stanno cercando la singola parola "C ++" da qualche parte nel curriculum.

Il che è triste, ma non vuoi perdere l'occasione.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.