Questo non è davvero giusto per gli ingegneri del firmware, un ingegnere del software in generale non conosce nemmeno la gestione del proprio spazio di codice, sa molto poco del sistema operativo, dei protocolli di rete e nulla dei vari protocolli dei dispositivi, molto lontano dalla comprensione dell'hardware, nessuna comprensione di come le interfacce e i vari sistemi complessi funzionino effettivamente... gli ingegneri del firmware devono ancora lavorare molto più duramente e mantenere un'ampia e profonda conoscenza di ogni cosa che fanno e con uno stipendio uguale o inferiore (perché?), perché un codice firmware è mirato all'hardware particolare e c'è bisogno di una profonda comprensione dello spazio da tutti i tipi di requisiti di memoria per portare la caratteristica di livello superiore ... I' sono un ingegnere di sviluppo del firmware e spesso lavora con gli ingegneri del software, li trovo davvero confuso e vedere un grande punto interrogativo su quel volto, quando condividiamo i requisiti da quel software per PC, essi doesn' nemmeno capire e prendere lo spazio e strutture dati così seriamente (manca un bye o byte mal posizionati o sequenza di dati...molto di più non sono un problema serio per loro, ma, può bloccare l'hardware), che può creare gravi problemi se non controllato da una persona superiore che conosce i requisiti a livello di sistema, il loro debug è anche, non molto intenso, tendono a passare le routine alla cieca e possono sedersi in bianco senza una chiara visione del problema né il luogo dove mettere il punto di interruzione, un atteggiamento comune in loro è quello di mettere punti di interruzione ovunque, il suo ' difficile per loro capire dove, come e perché esattamente sta accadendo qualcosa, questo rende un semplice problema un incubo per i ragazzi del lato sistema e alla fine, devono risolvere i problemi e fare il debug del loro codice (software peoples'), questa parte è ridicola...