Apprendimento dello sviluppo di sistemi embedded senza supervisione [chiuso]

10

Mi sono laureato quest'anno e ho ottenuto il mio primo incarico in programmazione C, amministrazione Linux e sviluppo di sistemi embedded. Sono abbastanza contento del mio lavoro, ma temo che non diventerò un programmatore di successo in questo campo. Sono uno sviluppatore solitario sul mio lavoro ora, con i miei compagni di squadra che sono esperti di hardware, non c'è nessuno che possa guidarmi o insegnarmi nei modi della programmazione integrata, devo studiare tutto da solo.

Quindi ecco le mie domande. È possibile diventare un buon sviluppatore di sistemi embedded a partire da una posizione entry level senza alcuna supervisione da parte di programmatori esperti? Come potrei diventarlo (magari con l'aiuto di forum, canali IRC, buoni libri di testo)? Quanto tempo impiegherebbe?

UPDATE: Finora, ho ricevuto una serie di utili risposte, ma mi sono reso conto che ho bisogno di alcuni suggerimenti specifici sull'argomento.

Quindi, ecco le mie domande particolari:

  1. Quali sono alcuni buoni libri di testo che si possono usare per imparare lo sviluppo integrato?
  2. Quali comunità online specializzate possono essere utili per un aspirante sviluppatore incorporato (senza contare elementi generali come Stack Overflow, Reddit e così via)?
  3. Quali sono i blog più interessanti dedicati allo sviluppo embedded?
posta Olga 23.10.2010 - 12:38
fonte

4 risposte

3

Hai ragione che essere nel tuo caso renderà le cose un po 'più difficili. Tuttavia ci sono molte soluzioni per risolvere il tuo problema.

  1. Prima prova a partecipare alle community come questa, ma forse più specializzato nel tuo campo. Partecipando, aumenterai le tue conoscenze e, cosa ancora più importante, incontrerai altre persone.

  2. Prova a partecipare ai campi di codice o a qualsiasi iniziativa in cui incontri in realtà altri sviluppatori come te. È più facile condividere la conoscenza quando hai la persona di fronte a te.

  3. Chiedi al tuo capo di prenotare almeno 10 giorni di formazione all'anno . Non c'è bisogno di spiegare i vantaggi qui, se rifiuta, è stupido.

  4. Prova a vai alla conferenza 1 o 2 o alla fiera relativa alla tua attività.

  5. Prova a leggere un libro tecnico ogni due mesi . Se puoi leggere di più, non esitare.

  6. Ottieni un mentore . Ovviamente non è la cosa più facile da raggiungere.

  7. Prenota un po 'di tempo durante la settimana per fare un esperimento e fare ricerche e amp; sviluppo , provando le nuove tecnologie delle cose che leggi nei tuoi libri, comunità, fiere commerciali, corsi di formazione, ecc. Prendendo il tempo per esercitarti su ciò che hai imparato è MOLTO importante.

  8. Oggi sei l'unico sviluppatore, ma grazie al tuo duro lavoro, la società in cui ti trovi crescerà e probabilmente avrà bisogno di assumere più persone del tuo tipo .

risposta data 23.10.2010 - 13:26
fonte
3

I'm a lone developer on my job now, with my teammates being hardware experts

Non esitare ad usarli come risorsa. Una delle cose più difficili per i programmatori embedded che non sono EE sta diventando comoda con l'hardware. È molto utile poter leggere uno schema (anche se non è possibile progettarne uno) e capire come utilizzare un oscilloscopio per guardare i segnali che escono dal microcontrollore.

    
risposta data 23.10.2010 - 21:02
fonte
0

È passato un po 'di tempo da quando hai fatto questa domanda, quindi spero che tu stia bene sulla tua strada. Ecco alcuni suggerimenti aggiuntivi che spero possano aiutarti.

Scambia lo scambio e i blog

Sorprendentemente, Stack Exchange non ha il suo Q & Un sito per sistemi embedded. Uno è stato proposto circa due anni fa, ma è ancora in fase di impegno, languendo senza che la gente si iscriva per sostenerlo. Se vuoi fare la differenza, vai qui:

link

Leggi la proposta e, se sei d'accordo, fai clic su commit per essere coinvolto.

Linked In ha anche un gruppo Embedded Systems, oltre a un paio di gruppi strettamente correlati che possono essere di interesse:

Sistemi integrati

Firmware

ARM

Risorse web

EETimes ha funzionalità sui sistemi incorporati.

link

Dr. Dobbs è un amico di lunga data per programmatori di tutti i tipi e ha grandi cose su embedded.

link

La community di Arduino è grande, entusiasta e ha rimosso molte barriere all'entrata per la programmazione inclusa il prezzo e la formazione precedente.

link

Se sei uno sviluppatore di software femminile o uno sviluppatore maschio non illuminato che i sistemi embedded sono principalmente un club "Good-Old-Boys", dai un'occhiata a questo sito. L'autore è un laureato del MIT, ha lavorato in modo spigoloso, fuori dagli schemi (oa volte nella confezione, come il caricabatterie per iPhone di Altoids-box), e sembra essere molto prolifico nella sua progettazione, scrittura e video blogging.

link !

link

Molti venditori avranno ampie raccolte di schede tecniche, note applicative, white paper e copie gratuite o di valutazione di strumenti di sviluppo. Le aziende più importanti in questo settore includono ARM, Atmel, Freescale, Intel, Microchip Technologies, NXP (in precedenza Phillips), TI e molti altri.

Libri

Non so se riuscirai a trovarlo, ma ho un libro che penso narra gran parte della storia dei sistemi embedded in termini di strumenti (assemblatori, linker, caricatori) e cose fondamentali che accadono nei microprocessori (interrupt, I / O, semplici task manager e programmatori, semplici strutture di file). Programmazione di sistemi per piccoli computer, Daniel Marcellus.

Un riferimento più moderno è Embedded Linux Primer. I primi capitoli discutono la logica dietro l'esecuzione di Linux su sistemi embedded e alcuni dei meccanismi coinvolti. Il capitolo 3 presenta una discussione sui processori, i chipset di supporto e le opzioni SOC (System On a Chip) che possono essere considerate per l'uso nei progetti attuali. In realtà, l'obiettivo è in movimento, quindi dà un punto di partenza che è contemporaneo con la pubblicazione del libro. Il capitolo 3 è ottimo, ma dovrebbe essere integrato con ulteriori ricerche sul web e in discussione con i venditori. In genere, l'ingegnere elettronico e gli ingegneri del software principale del progetto sceglieranno il processore, quindi se sei in un'azienda e stai imparando sistemi embedded, fai il tuo profondo tuffo sull'hardware che scelgono.

I capitoli successivi includono descrizioni esaurienti su molti aspetti pratici del targeting di Linux sull'hardware, ma la collaborazione con il fornitore e l'uso di un progetto di riferimento piuttosto standard potrebbero ridurre lo sforzo in modo significativo.

    
risposta data 23.08.2012 - 21:02
fonte
0

Dipende principalmente da te stesso. Se sei disposto a imparare e sapere come raccogliere abbastanza informazioni sull'argomento puoi insegnare qualcosa a te stesso. Ma non tutte le persone sono altrettanto riuscite a farlo:

Ho iniziato in un ambiente simile, e se vedo dove sono ora rispetto a 5 anni fa (laureato come ingegnere elettronico, praticamente senza background di programmazione), trovo incredibile ciò di cui è capace il cervello umano. Quando ho iniziato non avevo mai sentito parlare di modelli di design, TDD, ... e non avevo mai visto il codice di un vero programma. Ora conosco abbastanza bene queste cose e so come usarle. L'unica cosa che faccio è cercare in rete, leggere il codice dagli altri e alcuni libri (che ancora, ho trovato in rete), e, cosa più importante, scrivere tonnellate di codice, eseguire il debug, imparare dai miei errori. Imparare da un errore è un modo molto migliore per imparare qualcosa piuttosto che leggere un campione e replicare il comportamento. È molto strano, ma ho solo parlato nella vita reale a quello che definirei un buon programmatore un paio di volte.

L'unico altro programmatore qui è quello che chiameresti senior (perché ha lavorato per oltre 15 anni). Lui lavora in un modo completamente diverso da quello che faccio io. E sta ancora scrivendo una forma paralizzata di C con le classi, non usa mai STL, non ha idea di cosa sia un modello di design ecc. Ecc. (Probabilmente sto per iniziare una domanda al riguardo presto, sto avendo difficoltà a cercare di fagli adottare almeno alcuni dei miei metodi ..)

    
risposta data 23.10.2010 - 13:48
fonte

Leggi altre domande sui tag