Devo includere "assembly" come linguaggio di programmazione nel CV? [chiuso]

15

Nella risposta a una domanda qualcuno ha scritto che assembly is not a language, it's a process . Tendo ad essere d'accordo, dato che il "linguaggio" dell'assembly dipende dall'architettura su cui verrà eseguito, che potrebbe differire un po 'da una CPU all'altra.

Quindi, se hai scritto assembly per un'architettura, vuol dire che puoi includerlo nel CV sotto solo assembly insieme agli altri linguaggi di programmazione? O dici esplicitamente di aver scritto assembly per quella particolare architettura?

EDIT: modificato "dabbled" a "scritto". L'inglese non è la mia lingua madre e ho frainteso il termine, pensando che significava che lo hai usato molto invece che solo un po '.

    
posta gablin 23.12.2010 - 12:01
fonte

8 risposte

22

Forse sono un pedante, ma "assemblatore" non è un linguaggio di programmazione, è un software per tradurre le mnemoniche delle istruzioni di assemblaggio in opcode per un particolare processore. Se vuoi dire di sapere linguaggio assembly , elenca il linguaggio Assembly per il processore XXX nel tuo CV.

    
risposta data 23.12.2010 - 12:23
fonte
12

Penso che la domanda sul fatto che sia tecnicamente una lingua è un po 'irrilevante, anche se non fa mai male essere accurata (quindi sì includere l'architettura specifica se la si elenca e probabilmente si mette Assembly Language piuttosto che Assembler, anche se leggere personalmente la successiva come una stenografia ragionevole piuttosto che un errore da penalizzare).

Le cose su cui mi sarei assicurato che stavo pensando più di questo sono:

1) La cosa principale: ti aiuterà a ottenere il lavoro in questione? Dovresti modificare il tuo CV a seconda del ruolo e per ognuno chiediti questo mi fa sembrare un candidato migliore < em> per questa posizione . Non c'è un assoluto, è dipendente e il lavoro in questione.

2) Sei felice di farti delle domande in un'intervista? Le tue conoscenze sono aggiornate e di buon livello? Fondamentalmente se lo metti nel tuo CV è un gioco leale per le domande quindi assicurati di essere soddisfatto e che ritieni comunque che tu scelga di presentarlo rappresenta il tuo livello di conoscenza correttamente.

3) E in seguito a ciò, dove metterlo? Dato che dici di aver dilettato forse la soluzione migliore è in una sezione Altri interessi puoi dire "Ho un ampio interesse nella tecnologia e ho speso il mio tempo a studiare una serie di linguaggi e piattaforme al di fuori del mio set di competenze di base incluso il 6800 (o qualsiasi altra cosa) Assembly Language.

    
risposta data 23.12.2010 - 12:57
fonte
5

I wouldn't put "assembler" for the same reason I wouldn't put "compiler".

Anche se devo ammettere che non sono sicuro di voler includere qualcosa in cui ho appena "dilettato".

Ad ogni modo, il mio CV include "6502 assembly language". È interessante notare che non mi aspetto di scrivere ancora per la 6502 in qualsiasi momento presto (sono principalmente programmatore C # in questi giorni), ma lo includo perché comunica cose interessanti su di me e sulla mia esperienza:

  1. Indica che so come funzionano effettivamente queste cose al computer ad un livello piuttosto basso. Ciò significa che capisco cosa sta succedendo quando scrivo codice di alto livello e questa conoscenza è ancora utile per risolvere problemi e fare il debug del codice.
  2. Suggerisco di conoscere le tecniche per la gestione della memoria, l'ottimizzazione, ma-twiddling ecc. che spesso vengono persi dai programmatori che non hanno affrontato le cose a questo livello.
  3. Dimostra che sono in giro da un po ', con una grande esperienza come sviluppatore.
  4. Suggerisco che posso ancora portare a termine il lavoro anche quando i miei strumenti moderni mi lasciano andare (come fanno a volte).
  5. Spesso suscitano interesse nell'intervista.

Questo ultimo punto è la chiave. Durante l'intervista ho avuto conversazioni interessanti e vantaggiose basate sulla mia menzione del 6502, in genere in cui l'intervistatore ha anche programmato in linguaggio assembly (di qualsiasi tipo, ma in particolare 6502). Questo certamente non mi ha fatto alcun male, e potrebbe benissimo aiutarmi a garantire la mia posizione attuale.

    
risposta data 23.12.2010 - 14:23
fonte
4

L'avrei archiviato in qualche modo sotto 'architecture experience', forse qualcosa del genere:

"Successfully ported (kernel or subsystem) to [arch], in depth knowledge of [arch] assembly."

Sarei piuttosto conciso nella tua area "obiettivi", indicando esplicitamente ciò che speri di lavorare. Sarebbe schifoso se tu venissi assunto, poi mi fu consegnato una pila di roba di invecchiamento che doveva essere trasferita.

    
risposta data 23.12.2010 - 12:12
fonte
2

Scrivi assemblatore e includi la particolare architettura della CPU. Altrimenti darai l'indicazione che non hai capito l'assemblatore. Considera anche di includere l'assemblatore se è pertinente per il nuovo lavoro.

    
risposta data 23.12.2010 - 12:06
fonte
1

Nel tuo curriculum, di solito dovresti avere una sezione per programmare le lingue, un'altra per le lingue di assemblaggio (ovviamente se conosci il linguaggio assembly ecc.) Ecco un esempio:

Credenziali tecniche:
Linguaggi di programmazione: Algol, COBOL, Pascal, Lisp
Lingue dell'assembly: x86, x86- 64

Assicurati di poter difendere ciò che hai scritto nel tuo CV. Se hai eseguito progetti specifici utilizzando un linguaggio assembly, elencalo chiaramente in una sezione Dettagli progetto . Ti consigliamo anche di menzionare alcune delle istruzioni più importanti che hai utilizzato.

    
risposta data 23.12.2010 - 14:24
fonte
1

Penso che ci siano diversi motivi quasi ortogonali per scrivere assemblatori, e potrebbe non esserci molta comunanza oltre a essere conversanti passabili nel linguaggio assemblatore. Gli esempi includono:

(1) Creazione di prestazioni al mondo per i kernel matematici imporatnt. Conosce la matematica, l'architettura del computer, ecc.

(2) Ha scritto un sacco di assembler per eseguire il debug del nuovo hardware. Può sapere poco sulle caratteristiche di prestazione della macchina data, ma conosce un sacco di informazioni sulla verifica dell'hardware.

(3) Può leggere l'assemblatore generato dal compilatore come strumento per il debug.

(4) Può utilizzare l'assemblatore per ottenere funzioni HW non supportate dai linguaggi di livello superiore.

(5) Scrive i backend del compilatore e esamina l'assemblatore generato per modificare gli algoritmi di generazione / ottimizzazione del codice come parte del team del compilatore.

In generale, penso che la correlazione tra le abilità tra questi compiti distinti non sia probabilmente molto alta. Assumi qualcuno con esperienza e abilità dimostrata nell'attività M per un lavoro che richiede l'attività N, e potresti essere seriamente deluso nei risultati.

    
risposta data 23.12.2010 - 22:50
fonte
0

Assembly è una lingua, ce n'è almeno una per ogni set di istruzioni.

Sì, mettilo assolutamente lì anche se scrivi applicazioni web in un linguaggio di scripting di alto livello.

Forse il posto dove lavoro è l'eccezione, non la regola (il business del networking e il business dei chip / processori) ma una buona parte dei nostri programmatori conosce e scrive assembly e anche se stavi cercando un porting di Linux o un lavoro di driver di dispositivo vedremmo l'esperienza di assemblaggio, farti domande e prendere decisioni in base alle tue risposte.

Come qualsiasi altra cosa sul tuo CV che non si riferisce al lavoro che stai facendo, lo salteranno. questo non è un tipo di "meno è più". Se sai davvero qualcosa metterlo giù, lingue, processori, protocolli, apis, ecc. Se lasci le cose fuori e ti aspetti che l'intervistatore ti legga la mente o sia costretto a indovinare quali domande porre per cercare di disegnare queste cose, è a tuo svantaggio. Preferirei avere un curriculum vitae / curriculum di più pagine da esaminare quando intervista un candidato rispetto a qualcuno che ha cercato di stipare quello che potevano su una pagina e ha lasciato fuori la "carne". Spesso un curriculum del genere non riesce a superare il processo di pre-screening. Le risorse umane spesso scandiscono i curriculum per parole chiave, abbastanza parole chiave e ti alzi in cima alla pila, non abbastanza o nessuna e ti scartano senza nemmeno un'intervista telefonica. Invece di meno è di più, di più è di più. Allo stesso tempo, se non conosci davvero la lingua, o hai frequentato un corso al college ed è stato così tanto tempo fa non ricordi davvero nessun dettaglio, lascia perdere, arrivando al colloquio con risposte del genere che incoraggia il tuo curriculum / CV per arrivare rapidamente al distruggidocumenti.

Sì, elencalo come linguaggio di programmazione, cioè di cosa si tratta e specifica il processore (famiglia).

C, C ++, Java, linguaggio assembly (x86, ARM, MIPS), Python, Perl ...

Alcune persone elencheranno l'assemblatore non la lingua TASM, NASM, MASM.

    
risposta data 13.01.2012 - 05:08
fonte

Leggi altre domande sui tag