Języki w CV: czy lepiej jest wpisać „C / C ++” lub „C, C ++”? [Zamknięte]


46

Kończę studia za kilka tygodni, a moje CV (zgodnie z oczekiwaniami) zawiera listę języków, z którymi miałem doświadczenie. Wcześniej umieściłem „C / C ++” , jednak wtedy nie miałem tak dużego doświadczenia z tymi dwoma językami, jak teraz.

Teraz, gdy formalnie nauczyłem się tych dwóch języków, stało się dla mnie oczywiste (i każdy, kto naprawdę zna te języki), że są one podobne i jednocześnie zupełnie odmienne. Jasne, większość kodu C jest kompilowalnym kodem C ++, ale składnia i integracja funkcji bibliotecznych jest prawie tam, gdzie kończą się te podobieństwa. W większości nietrywialnych problemów istnieje prawdopodobieństwo, że pożądane rozwiązanie C ++ będzie inne niż pożądane rozwiązanie C.

Moje pytanie:


Czy osoby rekrutujące zwrócą uwagę lub zadbają o to, czy umieścisz „C / C ++” w przeciwieństwie do „C, C ++” ? Czy założą się, że nie znają działania albo z powodu włączenia pierwszej formy, czy też zobaczą włączenie drugiej formy jako potencjalnego „wznowienia wołowiny” (wymieniając je jako 2 języki zamiast „jednego”) ?

Co więcej, w przypadku prac, które aplikowałeś, które były szczególnie zainteresowane tymi dwoma językami, proces wywiadu zawierał pytania dotyczące różnic między programowaniem C i programowaniem w C ++ (a więc o rzeczywistych technikach programowania, a nie tylko dodatkowych paradygmatach w tym drugim )?


34
Można by mieć nadzieję, że nie sprowadzą się do takich rozróżnień.
kasterma

19
Dlaczego oznaczyłeś swoje pytanie osobno jako „c” i „c ++”?
dan04

7
Sprowadza się do takich rozróżnień.
szybko_now

3
Myślę, że wykracza to poza pedantyczne i wkracza w sferę utrzymywania odbytu. Jedynym powodem, dla którego nie głosuję na zakończenie, jest to, że uważam, że Kevin jest naprawdę ciekawy.
Rei Miyasaka,

4
Mój pogląd - czy napisałbyś „C / Java”? Użycie separatorów ukośnika zamiast przecinków może być w porządku, ale jeśli nie piszesz „C / Java”, po co pisać „C / C ++”?
Steve314

Odpowiedzi:


62

C, C ++

Nie podoba mi się C / C ++, ponieważ chociaż C ++ jest technicznie nadzbiorem C, aby zrobić to dobrze, musisz robić różne rzeczy. C / C ++ sprawia, że ​​wyglądasz jak ktoś, kto zna C i wie, że kompilator C ++ również akceptuje C.


29
Nawet technicznie nie jest. Też je rozdzielę.
Tobu,

7
Kiedy czytam C / C ++, myślę o programach C ++ używających #define, malloc () / free () i wszystkich innych rzeczy, które działały w C i jako nawyk są również używane w C ++.
Oliver Weiler,

8
Myślę, że technicznie C ++ jest nadzbiorem podzbioru C.
Ian G

29
Wszystko jest nadzbiorem podzbioru C.
Dario

1
@JBRWilkinson Co jeśli C wynosi 0? Ponadto w tej instrukcji nie ma zdefiniowanych punktów sekwencji. To skompilowane określone zachowanie.

35

Zwykle pisałbym C / C ++ jako nawyk, ale :

  • niektórzy pedantyczni rekruterzy mogą myśleć, że błędnie zakładasz, że są tacy sami (mało prawdopodobne ... mam nadzieję),
  • istnieje większe prawdopodobieństwo, że C, C++zostanie ono przeanalizowane do elementów Ci C++niż C / C ++ ... co może mieć znaczenie, gdy rekruterzy spróbują dopasować twój profil do wymagań dotyczących roli.

Więc spróbuj mieć C / C ++ w twoim ogólnym opisie, a następnie C i C ++ oddzielone gdzie indziej.

To tylko rada, nie mam na to mocnego dowodu, ale (wiele) agencji rekrutacyjnych stosuje podejście oparte na słowach kluczowych.

Gdy miniesz agencję rekrutacyjną, prawdziwy rekruter w Twojej firmie docelowej będzie (mam nadzieję, jeśli nie zostanie odfiltrowany przez nietechnicznych pracowników HR), że niekoniecznie implikujesz, że C i C ++ są w tym samym koszyku, więc ja naprawdę myślę o tym tylko jako problem z analizą.

To samo dotyczy wariantów Javy oraz jej platform i specyfikacji, które z czasem miały zły zamiar zmieniania konwencji nazewnictwa z czasem: Java SE, JavaSE, JSE, J2SE, Java EE, JavaEE, JEE, J2EE itp. ..


17
+1 za kąt parsowania. Większość rekruterów nie będzie miała pojęcia o technicznej różnicy między C i C ++.
George Marian

@George: Nie mówiąc już o C, C + [sic] i C ++
Nick T

@George: prawda, niestety. Masz również przypadek osoby rekrutującej, która uważa, że ​​nie nadajesz się do roli, ponieważ wymieniłeś JEE zamiast J2EE lub odwrotnie ... To kolejny przypadek czegoś, co staram się mieć przy obu okazjach mojego CV (JEE na liście umiejętności, J2EE dla projektów, w których wówczas terminologia to J2EE). Denerwujący.
haylem,

28

Dla mnie „C / C ++” jest silnym sygnałem negatywnym.

Bjarne Stroustrup pisze :

Nie ma języka o nazwie „C / C ++”. Zwrot ten jest zwykle używany przez osoby, które nie mają pojęcia o programowaniu (np. Personel HR i słabi kierownicy). Alternatywnie, jest używany przez osoby, które po prostu nie znają C ++ (i często też nie C). Kiedy jest używany przez programistów, zwykle oznacza, że ​​„C ++ to C z kilkoma przydatnymi i dodanymi wieloma niepotrzebnymi skomplikowanymi funkcjami”. Często jest to punkt widzenia ludzi, którzy lubią pisać własne ciągi znaków i tabele skrótów, nie znając standardowej biblioteki poza printf i memcpy. Są ludzie, którzy trzymają się ograniczonego podzbioru C ++ z absolutnie dobrych powodów, ale oni (o ile zauważyłem) nie są ludźmi, którzy mówią „C / C ++”.


4
@Kevin: To nie jest odwołanie do władz, jeśli wyjaśnienie jest jasno wyjaśnione. Stroustrup z pewnością nie odwołuje się do autorytetu, a uzasadnienie jego odpowiedzi jest wystarczające, by nie lubić „C / C ++” - niezależnie od tego, kto to powiedział.
Billy ONeal

2
@Kevin: Przepraszam, gdybym był niejasny, ale nie uwzględniłem cytatu Stroustrupa jako odwołania do jego autorytetu, i to nie dlatego, że opinia Stroustrupa uważam „C / C ++” za sygnał negatywny. Po prostu skorzystałem z jego wyjaśnień, ponieważ, cóż, byłem zbyt leniwy, by pisać własne.
Thomas Padron-McCarthy

„Zwrot ten jest zwykle używany przez osoby, które nie mają pojęcia o programowaniu (np. Personel HR i słabi menedżerowie)” - Wydaje mi się to dobrym powodem do używania C / C ++. Chodzi o to, aby wyświetlić listę technologii w twoim życiorysie, aby zachęcić pracowników działu HR do przekazania ich zespołowi, który głównie spojrzy na twoje doświadczenia.
Sean McMillan,

C / C ++ to C z cout dla wydruku, a nie printf
CashCow

Uważam, że postawa pana Stroustrupa, a także rozbieżność między C i C ++, jest niefortunna. Podczas gdy kod napisany w sposób obiektowy powinien unikać C-podobnych malloc, niektóre funkcje, które zapewnia C ++, mogą być przydatne dla programów, które są napisane w 99% w C. Część napisanego przeze mnie oprogramowania jest zaprojektowana tak, aby mogła albo skompiluj jako kod C dla małego wbudowanego procesora lub jako kod C ++ do celów „emulacji” na komputerze. Nawet kod, który zapisuje bezpośrednio do rejestrów I / O, może działać bez modyfikacji na warstwie emulacji, ponieważ rejestry I / O
zastąpiły

20

Jeśli chcesz usunąć wszelkie niejasności, po prostu wypunktuj je:

  • do
  • C ++

To obejmie wszystkie kąty, w tym również parsowanie.


8
Gdybym sporządził wypunktowaną listę wszystkich języków i technologii, których użyłem, zajęłoby to całą stronę, a potem kilka.
Andrew Arnold

1
@Andrew: czy uważasz, że to pomogłoby ci znaleźć pracę, którą naprawdę chcesz?
JBRWilkinson

3
@JBRWilkinson - Oczywiście, że nie. Mówię, że takie pociski nie są dobrą rzeczą.
Andrew Arnold

1
Jeśli twoimi dwiema największymi atutami są C i C ++ i nie masz nic przeciwko, jeśli twoja kolejna praca wykorzystuje jedną lub drugą, to w czym problem?
JBRWilkinson

@Andrew - prawdopodobnie nie powinieneś wymieniać wszystkiego, co wiesz - powinieneś skierować swoją aplikację do konkretnego zadania, a jest mało prawdopodobne, aby było więcej języków / technologii związanych z jednym zadaniem, niż można by było w uzasadniony sposób. Istnieje również coś, co DocBook nazywa prostą listą, IIRC - rodzaj mini-stołu przedmiotów - jeśli chcesz wymienić więcej niż pół tuzina.
Steve314

18

Jeśli piszesz C / C ++, wygląda na to, że tak naprawdę nie rozróżniasz tak bardzo między nimi. Zdecydowanie napisałbym C, C ++


13

Postaw to, co najlepsze na początku i samodzielnie, i bądź szczery. Zatrudniam doświadczonych programistów C ++, a moim doświadczeniem jest to, że ludzie, którzy wymieniają „C / C ++”, są świetnymi programistami C i zwykle marginalnymi lub początkującymi programistami C ++. To nie pedanteria, to wyniki setek wywiadów przeprowadzonych przez moją grupę i ja. Jeśli podasz „C ++, C, java, perl”, będę dalej czytać o twoich projektach, doświadczeniu i edukacji. jeśli podasz „perl, java, C, C ++”, przekażę ci faceta na dole korytarza, który zatrudnia nasz zespół perla. Jeśli podasz „C / C ++”, musisz mieć naprawdę mocne doświadczenia, które były wyraźnie w 100% C ++.


9

Prawdopodobnie nie ma znaczenia

Przynajmniej nie dla rekrutujących. Większość rekruterów prawdopodobnie potraktuje je jako to samo lub przynajmniej odmianę tego samego. Bardziej zaawansowani technicznie prawdopodobnie nie zwracają uwagi na tak drobny szczegół.

Jednak martwiłbym się o „wznowienie wołowiny”, gdybyś miał opis każdego z nich. Jeśli dołączasz opis wymienionych języków, wymień je razem i dołącz do nich częściowe zdanie.


Nie zgadzam się - w przypadku języków takich jak A +, B, C, C ++, C #, Obj-C, D i E. najlepiej jest wyjaśnić rekruterowi.
JBRWilkinson

1
@JBRWilkinson Mówię konkretnie o traktowaniu „C, C ++” i „C / C ++” jako tego samego - nie „C” i „C ++” jako tego samego. Innymi słowy, większość rekruterów nie rozróżnia między użyciem a ,lub /. Nie zgadzasz się z tym?
Nicole

Nie zgadzam się: ma to znaczenie dla osób, które podejmują decyzję o tym, czy otrzymasz wywiad.
szybko_now

@quickly_now - W jaki sposób robi ,lub /materia?
Nicole

@Reneesis - patrz moja dłuższa odpowiedź.
szybko_now

8

Czy umieściłbyś Java / C # w swoim CV? Lub Perl / Python? (Java / JavaScript byłby interesujący)

Prawdopodobnie nie, więc dlaczego C / C ++?

Oczywiście możesz po prostu dlatego, że specyfikacja zadania prosi o C / C ++, a jeśli nie napiszesz jej dokładnie w ten sposób, zostanie odfiltrowana, ponieważ nie zawiera prawidłowych modnych słów. Tak jak teraz musisz upewnić się, że słowa takie jak Agile pojawiają się w twoim CV w dzisiejszych czasach.


5

Kiedy twoje CV gaśnie, trafia ono w kilka miejsc: agencję rekrutacyjną / headhuntera (jeśli taki istnieje), menedżera ds. Rekrutacji w firmie, lidera zespołu w firmie ... i tak dalej.

Wznowienie może z łatwością przejść przez 3-4 ręce, a KAŻDY ma możliwość bazgroły notatkę mówiącą „traci punkty za brak znajomości X”. Lub po prostu rzuć nim prosto na stos odrzuconych kart. Gdy zostaniesz oznaczony, to wszystko ... CV jest faktycznie martwe. Przegrałeś.

Pamiętaj, że znalezienie pracy to konkurs. Nie tylko robisz ładne CV, musisz być klarowny, zwięzły i mieć coś, co wyróżnia Cię na tle następnego faceta. W ten sposób dostajesz pracę, a drugi facet nie.

Małe rzeczy mają znaczenie. Kiedy zastanawiam się nad 2 aplikacjami, którzy inaczej wyglądają identycznie, ten, który pisze: „C / C ++” denerwuje mnie, ponieważ trywializuje różnicę. Ten, kto pisze: „C / C ++ / C #” trafia na stos odrzuconych bez dalszych rozważań. Ponieważ osoba, która pisze te 8 znaków, myśli, że przekazuje wszystko, a one są wymienne. Oni nie są.

Patrzę również na odpowiednie doświadczenie i zrealizowane projekty. Kiedy kogoś zatrudniam, mój wykrywacz gówna działa z pełną siłą, ponieważ każdy, kto wchodzi do drzwi, kto gównie, marnuje twój cenny czas. Najtańsze wyeliminowanie jest na etapie wznowienia.

Więc jeśli wiesz coś dobrze, wyjaśnij to, wyraź. Wyróżnij się z tłumu.

(Na zasadzie analogii, może trochę staroświecki. Jeśli znam Pascala i Adę - dwa języki z dość wspólnym językiem (i tak, znam się znacznie inaczej). Czy spodziewałbyś się, że napiszę Pascal / Ada? znam Pascala i Delphi, chciałbym napisać Pascal / Delphi. Delphi może kiedyś być oparte na Pascalu, ale rozszerzenia OO i ogromne biblioteki sprawiają, że porównanie to kreda i ser.)


Ciekawy punkt Jedną z rzeczy, które należy docenić, jest zapobieganie pętli podczas rozmowy kwalifikacyjnej - nawet dobrzy kandydaci mają ankieterów, którzy po prostu nigdy ich nie zatrudniają. Nie każdy kandydat, który pisze, C/C++robi to, aby trywializować różnicę, ale jest dla ciebie tą osobą, ponieważ widzisz to w ten sposób. Mogę się z tobą nie zgodzić i uznać, C, C++że próbuję zwiększyć „liczbę” języków, które znają. W każdym razie dobra perspektywa, a to jeszcze bardziej podoba mi się to pytanie - lubię wchodzić w psychologiczne szczegóły wywiadów / rekrutacji.
Nicole,

Napisałem kolejną długą odpowiedź na temat zatrudniania ... programistów.stackexchange.com/ questions/3892/... i programmers.stackexchange.com/questions/19278/... Prawdopodobnie warto je również przeczytać. Jestem zdecydowanie w obozie Joel-on-software: lepiej zatrudnić nikogo poza niewłaściwą osobą. Osoba, której nie jesteś pewien ... powinna być BRAK WYNAJMU.
szybko_now

Kontrapunkt; nigdy mi to nie przeszkadza. Lista języków programowania, bez względu na to, jak jest prezentowana, jest właśnie taka - lista. Nie odrzuciłbym nikogo za używanie / zamiast, Jasne, patrzysz na ich bardziej szczegółowe doświadczenie, a jeśli wygląda na to, że C / C ++ oznacza „Nie uczę się trochę C raz”, to tak, odrzuć je. Ale tak naprawdę to nie było pytanie.
Błędny

dzięki temu mechanizmowi filtrowania jestem kompletnie wkręcony, w dziale dotyczącym języków napisałem „C ++ / Java” - ups ...: D
Nim

3

Rolą CV jest doprowadzenie Cię do rozmowy kwalifikacyjnej. W dzisiejszych czasach często oznacza to trafienie w słowa, których poszukuje rekruter i HR, a następnie wywarcie wrażenia na menedżerze ds. Zatrudnienia.

W tym celu wymienię je osobno. Może to nie mieć znaczenia dla HR lub rekrutera, ale menedżer ds. Rekrutacji prawdopodobnie to zauważy, a jedynym sposobem, w jaki będzie to miało dla niego znaczenie, jest to, że boli cię użycie „C / C ++”.

To powiedziawszy, nie powinieneś bać się dostosować swojego CV do pracy, a jeśli w opisie jest napisane C / C ++, wypisz C / C ++, a także znajdź sposoby na ich osobne zestawienie.


2

Przepraszam, ale czy nie sądzisz, że to naprawdę rozszczepia włosy? Kiedy zatrudniam programistę, krótko patrzę na to, co to jest lista języków, ponieważ i tak zwykle zatrudniam dla określonego języka. Również fakt, że znasz język, nie oznacza, że ​​naprawdę znasz wszystkie jego biblioteki, interfejsy API i wiesz, jak z nich korzystać.

Bardziej interesuje mnie zazwyczaj doświadczenie zawodowe lub wszelkie projekty, nad którymi mogłeś pracować. Znam wiele języków, ale wykonałem poważną pracę tylko w około dwóch lub trzech z nich. Spędziłbym więcej czasu na podkreślaniu twoich sukcesów i doświadczeń niż na tym, ile języków znasz. Tylko moje 0,02 $.


1
Tak, ale jeśli otrzymasz CV za pośrednictwem agencji rekrutacyjnej, może, ponieważ wielu naprawdę NIE ma pojęcia, czego szukają. Całkiem smutne, ale tak to jest. Oczywiście, jeśli zatrudniasz bezpośrednio, to nie masz tego problemu, to prawda. Ale tak ... to naprawdę dzieli włosy.
haylem,

2

Ukośnik jest tradycyjnie skrótem dla i / lub. Czy znasz C i / lub C ++? Myślę, że znasz C i C ++. Napisz to w ten sposób.


1

Nie miałbym sekcji, w której w ogóle wymienionoby roszczenia dotyczące znajomości języka.

Przykład: kiedy byłem na studiach, użyłem C, aby lepiej wyrazić to, co pierwotnie było programem napisanym w asemblerze 80286 z adnotacjami MASM, jednocześnie wykorzystując tę asmfunkcję do włączenia rzeczy, które musiały być w asemblerze. Do wszystkiego innego wybrałem C ++ lub prekursora Delphi o nazwie „Object Pascal”, który był nauczany na tej uczelni.

W CV, które może przybrać postać „Acme University - 1993-1995 - Network Programmer \ Jako student pracownik działu MIS, opracowałem narzędzia monitorowania sieci TCP / IP niskiego poziomu do użytku przez MIS, używając Assemblera, C oraz języki programowania C ++. ”

Dział HR resume-boty nadal znajdzie i wybierze lub odrzuci twoje CV, ale powyższe roszczenie pojawi się w kontekście twojego rzeczywistego doświadczenia i będzie istnieć jako zdanie w języku naturalnym, które ludzie lubią czytać. Taka rzecz mówi o wiele więcej niż lista modnych słów.


Nie mogłem się więcej zgodzić. Dostałem swoją obecną pracę ze względu na moje doświadczenie w stosowaniu mojej ogólnej wiedzy do projektów semestralnych. Po prostu opisałem swoje obowiązki.
Ramhound

Ale większość ankieterów (nie mówię o botach wznawiających), tj. Ankieterzy F2F mogą nie poświęcić czasu na przejrzenie zdań w języku naturalnym. Bardziej rozsądne byłoby zwięzłe przedstawienie swoich języków i dodanie osobnej sekcji z listą podjętych projektów.
abhicantdraw

Dobrze sformatowane jednostronicowe CV nie będzie obowiązkiem dla żadnego ankietera wartego jego soli; dokument ma stanowić punkt odniesienia do rozmowy kwalifikacyjnej. Jeśli Twój ankieter nawet nie przeczytał zbyt wiele, kwestionuj jakość firmy, do której się ubiegasz. W razie wątpliwości pogrub słowa kluczowe.
Rob Perkins

1

Wyobraź sobie kawałek kodu

int class = 0;

jest to legalny kod C, ale nie będzie się kompilował z kompilatorem C ++, dlatego są to dwa języki. Umieść C, C ++.


1
To kiepski przykład, ale to, co ma na myśli, nie jest takie złe. Co powiesz na większą różnicę, taką jak MyStructureType *ptr = malloc(sizeof(MyStructureType))kompilacja w C ++, ale nie w C? Te przykłady wykorzystujące po prostu słowa kluczowe C ++ są zbyt wymyślone przez IMHO.
Billy ONeal

0

Dla zdecydowanej większości pracodawców po prostu nie ma znaczenia (ten drobny konkretny element i tak). Dla tych, którzy to robią… cóż, prawdopodobnie i tak nie są dla ciebie firmą.

Twoja lista języków programowania i tak jest trywialna - nie martw się zbytnio, po prostu wymień listę języków, z którymi możesz sobie poradzić. Osoby rekrutujące są na ogół wystarczająco inteligentne, aby przeczytać o twoim doświadczeniu, które jest w końcu najważniejsze.

Pewnie; niektóre osoby odrzucają (lub wybierają) kandydatów zamiast wybrańców nitów. Tak właśnie się dzieje. Ale może to dotyczyć dowolnych trywialnych danych.

Po prostu napisz jasne, przyzwoite CV i to wszystko, co możesz zrobić :)


0

Ten ostatni. C, C ++.

Kiedy CV są skanowane do komputera, aby dział HR mógł je przetwarzać najskuteczniej, jeśli szukają słów kluczowych, mogą pominąć C / C ++, jeśli szukają jednego słowa „C ++” gdzieś w CV.

Co jest smutne, ale nie chcesz przegapić okazji.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.