Ho solo due lingue sul mio curriculum: quanto è grave? [chiuso]


21

Ho una domanda a cui è possibile dare una risposta migliore qui, data la vasta esperienza che alcuni di voi ragazzi hanno!

Ho intenzione di finire la mia laurea in CS e ammettiamolo, mi sento a mio agio con C ++ e Python. C ++ - Non ho esperienza da mostrare e non posso citare lo standard C ++ come fanno alcuni dei ragazzi su SO, ma sono comunque a mio agio con le basi del linguaggio e le cose che contano di più. Con Python ho dimostrato esperienza lavorativa con una buona compagnia, quindi posso tranquillamente dirlo.

Non ho mai toccato C, anche se avevo intenzione di farlo ora. Quindi non posso scrivere C sul mio curriculum perché non l'ho mai fatto. Sicuramente posso finire K&R e avere un'idea della lingua in un mese, ma non ho voglia di scriverlo perché sarebbe infedele a me stesso.

Quindi la grande domanda è: due lingue su un curriculum sono considerate OK o che di solito è un brutto segno? La maggior parte dei curriculum che ho visto menzionare molte lingue e quindi la mia domanda. Nella sezione lingua del mio curriculum, ho appena citato: C ++ e Python e quel genere sembra vuoto!

Quali sono le tue opinioni su questo e cosa provi in ​​una situazione del genere?

PS: Non voglio davvero scrivere ogni singola libreria o API con cui ho familiarità. O dovrei?


Puoi riformularlo in modo che sia più una domanda?
Jeremy,

10
Conoscere 2 lingue che escono dal college è probabilmente OK. È più importante che tu possa dimostrare di capire cosa stai facendo.
ChrisF

Penso che sia meglio essere bravi in ​​qualcosa, anche se sono solo 2 lingue, piuttosto che conoscerne molte e non è bravo in nessuna. E come ha detto @Jas, raccomando alcune lingue di livello superiore come C #. Inoltre, poiché conosci Python, puoi provare il motore di app django / google? Penso che le app Web siano la cosa del futuro
Jiew Meng,

Sono sorpreso che tu abbia evitato C nel perseguimento del tuo BS. La maggior parte dei corsi di laurea specialistica ha una catena di corsi basati su "hardware" che utilizzano ampiamente C come Organizzazione Comp e sistemi operativi.
Bryan Harrington,

3
Prometti di non toccare mai Perl, vero?
Giobbe

Risposte:


24

Finché sai come risolvere i problemi, non importa in quante lingue sei esperto. Ma dato che sei esperto di C ++, potresti investire qualche mese per acquisire qualche abilità in C # o Java (o Ruby , per questo motivo).


+1 @Jas: ottimi consigli sulla familiarizzazione con le nuove tecnologie. È importante darti la profondità di abilità aggiunta.
Estratto

2
"Finché sai come risolvere i problemi, non importa in quante lingue sei esperto." Non voglio piovere sulla parata dell'OP, ma sì, è importante. A volte dobbiamo indossare molti cappelli diversi per un lavoro e essere in grado di cambiarli rapidamente. Attualmente scrivo quotidianamente al lavoro in shell, Python, Perl, Ruby e SQL ed è importante poter passare senza "tempo di riattrezzaggio". Ma sto facendo queste cose da molto tempo, quindi è previsto. Fintanto che il PO si impegna a continuare a imparare più lingue, farà bene.
Tin Man,

2
Ottimo consiglio Vorrei prendere in considerazione la raccolta di "Sette lingue in sette settimane" di Bruce Tate come un modo per un'ampia varietà di lingue e poi pensare al tipo di lavoro che ti piacerebbe fare e imparare le lingue che sarebbero applicabili.
semplice il

In secondo luogo la raccomandazione per "Sette lingue in sette settimane" di Tate.
Bruce Alderson,

Assicurati di conoscere le strutture dei dati, la grande notazione, e puoi programmare su una lavagna in un centesimo, e puoi essere assunto quasi ovunque. Devi solo trovare un piccolo negozio di sviluppo come Google dove assumono programmatori che conoscono c ++ e python.
Kevin,

6

Non è poi così male se ti candidi per un lavoro che è esclusivamente C ++ o Python. Alcuni datori di lavoro potrebbero prendere in considerazione la conoscenza di più lingue come un segno che ci si può fidare di apprenderne di nuove rapidamente, ma dal momento che ti stai laureando un datore di lavoro ragionevole probabilmente lo terrà in considerazione. Sarebbe una storia diversa se tu avessi 20 anni di esperienza lavorativa ma conoscessi solo 2 lingue.

Potresti prendere in considerazione l'idea di iniziare a familiarizzare con una nuova lingua che ti interessa e menzionare il tuo curriculum. Mostrerebbe che sei dedicato ad ampliare la tua selezione della lingua e a sviluppare le tue abilità.


Ho programmato professionalmente per oltre 30 anni e ho molte lingue al mio attivo. Imparo sempre qualcosa di nuovo e che ha ripagato più volte.
Tin Man,

3

Due problemi nel conoscere solo due lingue:

  1. Esistono numerosi modelli di programmazione che possono aiutare a migliorare il modo in cui pensi alla progettazione dei problemi. Una mancanza di conoscenza di questi altri modelli limita le tue capacità.

  2. Le tue abilità non sono così portabili con altre lingue e sei fuori pratica nell'apprendimento di nuove lingue.

Per quanto riguarda ciò che accade nel tuo curriculum, questa è una domanda diversa: alcuni datori di lavoro saranno molto felici di trovare qualcuno concentrato solo su poche cose. Non credo che questo sia un buon segno per un programmatore, ma ci sono molte esigenze e attività diverse.

Suggerisco di imparare almeno una lingua all'anno, al di fuori di quanto richiesto dal datore di lavoro. Fa bene al cervello, al tuo design mojo e al tuo futuro curriculum.


2
+1 per indicare che lingue diverse ti aiutano a pensare in modi nuovi. Più lingue conosciamo, meglio siamo in grado di scegliere lo strumento giusto per un lavoro.
Tin Man,

E ancora meglio, alcuni linguaggi suggeriscono soluzioni diverse (ad esempio Prolog e Hanoi, oppure SQL e set di dati di taglio e taglio). Questa comprensione imposta il tuo pensiero per problemi in qualsiasi lingua. Ho applicato i concetti SQL a C ++ e STL e i fondamenti di Prolog e Lisp in piccoli linguaggi che ho progettato.
Bruce Alderson,

per quanto riguarda 2., dal momento che è appena uscito dal college, dubito che sia fuori allenamento. Per quanto riguarda 1., sono mitigato, sia C ++ che Python sono linguaggi multi-paradigmi, quindi non è così male come Java / C #.
Matthieu M.,

1

Probabilmente ti farebbe male solo con persone non tecniche che non si rendono conto che l'apprendimento delle lingue è la parte banale della programmazione.


5
Imparare una nuova lingua è banale solo se non aggiunge assolutamente altro che sintassi a ciò che sai. Imparare a scrivere programmi C ++ in Python o Ruby è banale, ma in realtà imparare Python o Ruby non è banale se si devono prendere anche nuovi paradigmi di programmazione. Puoi davvero dire la differenza tra qualcuno che ha appena appreso la sintassi e poi l'hackato qualcosa e qualcuno che ha effettivamente imparato la lingua.
as

banale, ma assolutamente vitale
Javier,

Dalla mia esperienza, solo le prime lingue sono difficili da imparare. Quando capisci come funzionano le lingue, hai domande e intuizioni migliori e inizi a elaborare rapidamente i concetti.
Bruce Alderson,

@Andrew, assolutamente, volevo dire che l'apprendimento della sintassi è banale, e questo è tutto ciò che un curriculum può davvero mostrare.

1

Concentrerei il tuo curriculum sulla tua esperienza lavorativa dimostrata, dimostrando che hai completato i progetti. Vale molto di più delle lezioni che hai seguito. A dire il vero, a meno che un laureato in CS non abbia effettivamente completato un vero progetto - e non sto parlando di lavoro scolastico, sto parlando di qualcosa su cui hanno lavorato per mesi o anni che è stato effettivamente utilizzato da persone reali per risolvere problemi reali - probabilmente non hanno abbastanza esperienza per affermare di 'conoscere' qualsiasi lingua. Dato che hai un'esperienza lavorativa effettiva con Python per un'azienda, probabilmente sei già un passo avanti rispetto a molte persone.

Inoltre sì, includi sicuramente API e framework con cui hai lavorato. Inoltre, non dimenticare SQL, se hai lavorato con i database.


1

Il numero di lingue sul tuo curriculum è irrilevante. Avere le lingue sul tuo curriculum che il tuo datore di lavoro usa è ciò che è importante, e anche quello è negoziabile.

Ho trasmesso persone che "conoscevano il linguaggio" a favore di qualcuno con una buona base in Informatica e la conoscenza di un linguaggio di programmazione "vicino" a quello che usiamo. Imparare la sintassi di una lingua è spesso banale. Imparare i linguaggi linguistici e gli approcci standard di solito richiedono più tempo.

A proposito, nel mio curriculum ho inserito solo le lingue con cui sono attuale. Non vedrai eiffel, schema, C, ecc. Non ci metto neanche Java, ma è perché non mi piace usare la lingua.


1

Ti assumerei per la sincerità. è prezioso come una terza lingua. Che imparerai presto, vero?

Troppa lingua può anche sollevare sospetti. Buono per il potenziale venditore / commessa che mostra le sue abilità di cazzate.

Il background dell'API può facilmente emergere nell'intervista. Alcuni considerano la conoscenza dell'API più pertinente della lingua stessa. Se conosci i punti deboli dell'API, ciò può aiutare un'azienda a evitare errori. Se conosci i punti di forza dell'API, anche questo è utile.

Una strategia consiste nel fornire un breve riepilogo delle API sul curriculum, ma mantenere la parte più gustosa per l'intervista, per costruire una conversazione.


1

Non penso che importi così tanto, soprattutto perché sono un buon paio di lingue:

  • entrambi sono multi-paradigmi, quindi non sei bloccato in OO
  • si completano piuttosto bene, il C ++ è relativamente di basso livello (gestione della memoria) e Python consente di hackerare rapidamente uno script quando necessario (ed è, in programmazione)

Ho visto curriculum con molte lingue e francamente non ne sono rimasto colpito. Chiunque può imparare una sintassi del linguaggio (a parte C ++: p) in una settimana o due, ma c'è una differenza tra conoscere la sintassi e scrivere un buon codice (idiomatico).

Dichiarando solo quei 2, dimostri di essere onesto e diretto. Sottolineano i progetti hai capito per dimostrare che si fa conoscere, è molto più probabile per impressionare il vostro futuro datore di lavoro.


1

Ho avuto la fortuna di intervistare una società che ha "ottenuto" molto tempo fa quando ero uno studente ... Anche se avevo una lista imbarazzante di cose che "conoscevo" (essendo molto liberale con quel termine), in realtà ho ottenuto il lavoro basato su un programma assemblatore VMS che ho scritto ... Che non ho inserito nel curriculum ma è uscito nell'intervista.

Letteralmente.

Come, l'avevo nel mio zaino (era tornato quando eri solito stampare i tuoi programmi su stampanti ad aghi industriali).

Quindi no. Le aziende che lo "ottengono" probabilmente considereranno quella combo positiva.


1

Per una prima posizione fuori dalla scuola, gli intangibili contano più dell'esperienza. Anche più avanti nella vita, puoi ottenere un lavoro come specialista in poche tecnologie. (Questo non vuol dire non imparare altre lingue, solo che non ti renderà disoccupato)

Preparati a discutere di algoritmi, scrivere nelle lingue che conosci su una lavagna bianca e mostrare entusiasmo per la risoluzione dei problemi. Se riesci a farlo, troverai qualcuno che può usare le tue abilità.

Ricorda che l'assunzione è relativa alla posizione. Si prevede che i giovani siano intelligenti e desiderosi. Gli anziani dovrebbero avere un'esperienza più specifica - ecco perché vengono pagati di più.


0

La maggior parte dei laureati non ha molta esperienza linguistica, ma solo uno o due si concentrano. E la maggior parte ho incontrato la lotta anche con quei pochi.


0

Dipende dal tipo di lavoro che stai cercando di ottenere, davvero, e da chi sta facendo la scelta.

Personalmente, se assumessi un programmatore junior, cercherei principalmente la mentalità e mi aspetterei solo che conoscano una lingua o due. Se stavo assumendo un programmatore principale, vorrei vedere un elenco di lingue di lavanderia, poiché coloro che non hanno lavorato in molte lingue invariabilmente non hanno idea del design della lingua, ed è la mia filosofia personale che qualcuno che capisca almeno il le basi del design del linguaggio sono una sorta di codificatore molto più grande.

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.