Domanda sul passaggio a sistemi embedded [chiuso]

1

Attualmente lavoro come sviluppatore .net e ho maturato fino a 3 anni di esperienza nel settore oltre a una laurea in informatica, in particolare l'ingegneria del software (so che questo non significa nient'altro che volevo solo spiegare che non sono il tuo programmatore generale della camera sul retro).

Quando ho finito Uni, ho iniziato a contrattare per un'azienda. Non dirò il loro nome, ma alcuni di voi potrebbero averne sentito parlare solo con la descrizione. Fondamentalmente prendono nuovi laureati e in cambio di esperienza di formazione e contrattazione devi andare dai clienti che dicono per un minimo di due anni. Non posso dire che è stato grandioso, ma sento di conoscere più persone di anni con me come me.

Il problema è che ora ho iniziato a seguire la strada dello sviluppo web a causa della mancanza di scelta nei client.

Quanto è difficile passare da un campo .net a una programmazione embedded / di basso livello? Ho l'entusiasmo per questo e lo sforzo, ma non sono abbastanza sicuro di come muoversi. A differenza dello sviluppo di applicazioni, la conoscenza della lingua e l'etichetta aziendale non sembrano essere sufficienti.

For example hardware wise I can set-up a computer but wouldn't know how to manually attached wires and program these systems. Is this kind of knowledge necessary?

Grazie in anticipo. Anche se qualcuno ha un'esperienza simile di scambio, dovrei?

tl; dr

Sviluppatore che non sa come ottenere da ruoli di sviluppo Web in sistemi incorporati.

Modifica :: Grazie a tutti per il consiglio.

    
posta Ankou 20.01.2014 - 22:55
fonte

3 risposte

1

Primo: passare da .NET allo sviluppo integrato attraverso il percorso convenzionale è probabile che sia difficile, data la propensione dei dipartimenti delle risorse umane a buttare via qualsiasi curriculum che non abbia tutte le parole d'ordine che i gestori delle assunzioni dicono di voler vedere.

Il modo in cui ti aggiri è che ti attivi nell'elettronica locale e nelle community di hobbisti informatici, parla con TUTTI, mentre impari il mestiere. Sentirai delle opportunità in questo modo. Uscite al MakerSpace locale. Ti coinvolgi in altre cose. (Ho sentito parlare di un progetto che è stato DISPERATO per l'aiuto del software, quando sono andato a parlare a una convention radioamatoriale: alcuni prosciutti del Texas stavano installando una rete radio a pacchetto intercity, che potevano gestire la roba radio e l'elettronica, ma non sapevano nulla su come scrivere il software necessario.)

Per la semplice meccanica di apprendimento dello sviluppo di sistemi embedded di base, si inizia imparando le basi per far accadere le cose nel mondo reale.

Arduino è una scheda sorprendentemente efficace per piccoli progetti integrati, con un ambiente di sviluppo progettato da zero per essere utilizzabile da programmatori che erano disposti a imparare le basi della programmazione. Ci sono molti tutorial, che coprono sia le basi della programmazione embedded sia come collegare l'hardware di base.

Teensy 3.0 è una scheda ARM a 32 bit con obiettivi simili a Arduino. Non è così diffuso come Arduino. Esercitazioni.

Entrambi sono abbastanza economici. Arduino ha un ecosistema molto più grande di schede periferiche disponibili ("scudi").

Ci sono Sagan ("miliardi e miliardi") di schede PIC là fuori, e Sagan di tutorial PIC, per hardware e software.

Tutte queste cose richiedono l'apprendimento di alcuni dispositivi elettronici di base. Non ti ucciderà. Dovrai investire denaro in strumenti. La buona notizia è che la maggior parte degli strumenti di cui hai bisogno sono incredibilmente convenienti in questi giorni, se sei disposto a comprare di seconda mano.

    
risposta data 21.01.2014 - 13:33
fonte
1

Ottieni un simulatore, sono gratuiti, qemu, dosbox, tra gli altri (ti consiglierei non-x86, ma qualunque cosa, in nessun modo deve corrispondere alla piattaforma in cui ti trovi o all'hardware che possiedi). Gazillions of example là fuori, basta imparare, tutti gli strumenti gratuiti, tutti i software gratuiti, devi solo inserire il tempo.

Quando sei pronto puoi comprare l'hardware, collegarlo (che all'inizio significa semplicemente collegarlo, usb, ecc.) e farlo, lampeggiare qualche led, qualunque cosa. Stesso affare, zilioni di piattaforme là fuori, pronte per il plug-in, sandbox per giocare in modo da non farsi male, e quando il tempo è pronto, uscite dalla scatola di sabbia e provatelo. se si prende prima il percorso del simulatore, allora tale passaggio dovrebbe essere molto più semplice e con maggiore sicurezza.

ci sono sistemi .net incorporati in modo da poter passare, ma ti consiglio di imparare C e un po 'di assemblaggio, quelli rimangono le fondamenta di embedded e ti daranno la maggior parte delle scelte mentre salti su piattaforme e apprendi.

    
risposta data 21.01.2014 - 03:45
fonte
1

Dipende da quanto a basso livello si vuole andare.
Naturalmente andare a un livello in cui si saldano insieme il proprio PC è a dir poco; non molto probabile.
Se vuoi scrivere C e Assembler su hardware personalizzabile, ti suggerisco di iniziare con RaspberryPi. Oltre ad essere divertente, è possibile utilizzarlo insieme ad alcuni JavaLib per comprendere le basi dell'interfaccia hardware, RS232 e simili. Dopo aver finito con quello puoi esagerare su queste cose con una piattaforma come arduino, che è più vicino alla programmazione C "reale". Dopodiché probabilmente hai una buona base di conoscenza per sviluppare il modo in cui vuoi e prendere decisioni informate.

Lo descrivo così perché l'ho fatto al contrario. Ho imparato alcune nozioni di base su java e poi su assembler e su C e mi sono trasferito da hardware quasi puro e circuiti e driver autodidatti ad arduino, a RbPi e poi a .NET.

Per quanto riguarda "come mettere insieme un PC, hardwarewise": ci sono tonnellate di tutorial per tutte queste cose. Basta vedere SE.
L'unica differenza è che non è possibile copiare incollare una soluzione a un problema hardware;)

    
risposta data 21.01.2014 - 13:43
fonte

Leggi altre domande sui tag