Come studente di informatica, come posso sviluppare competenze per un lavoro IoT al di fuori dell'istruzione formale?


25

Per fare bene in un campo relativo all'informatica, uno studente universitario deve fare molto di più che ottenere una laurea: deve andare ben oltre per essere competitivo con gli altri sul campo.

Come studente CS, sono relativamente a mio agio con l'aspetto software dell'IoT, ma meno soddisfatto dell'aspetto elettronico e della costruzione complessiva di un sensore / dispositivo abilitato a Internet.

In termini di IoT, cosa posso fare per sviluppare le mie capacità? In particolare, sono interessato a cose che potrebbero non essere insegnate al college per il mio corso CS, al fine di aiutarmi in futuro a trovare un lavoro o a progredire sul campo.


3
Puoi fare qualche incarico relativo all'Io al college? Compra alcuni Raspberry Pi Zero W (o simili, ma quelli sono i più economici), pensa a un progetto. Forse ottenere un cappello sensore; in caso contrario, trova un'API JSON gratuita che fornirà i tuoi dati e pubblicherà i dati su un sito web. Quindi sali su. Guarda in Zigbee e MQTT . Pubblica alcuni progetti o siti Web GitHub che puoi mostrare alle persone. Forse essere coinvolti in un progetto FOSS più ampio ed esistente. Inizia in piccolo, fatti strada, aggiungendo complessità e rendilo visibile, quindi aggiungilo al tuo CV.
Mawg,

FWIW, vedo molte aperture di lavoro Zigbee, ma finora nessuna per MQTT, ma continuerei a cercare MQTT se fossi in te.
Mawg,

Risposte:


16

Sono stato un tutor universitario in un dipartimento che ora insegna IoT e le tue osservazioni sono giuste quando si tratta di sporcarsi le mani con alcuni giocattoli piuttosto che solo una laurea. Molti scienziati informatici lavorano in collaborazione con ingegneri come ingegneri della comunicazione, ingegneri di produzione per trovare soluzioni uniche in cui l'IoT diventa un'applicazione interessante.

Penso che puoi iniziare esaminando diversi stack di protocolli di comunicazione come:

  1. IEEE 802.15.4 che include campi come le reti di sensori wireless e il noto ZigBee . Dai un'occhiata a Contiki-OS e RIOT-OS . I nodi dei sensori stessi costano un po 'di più, ma un dipartimento universitario che potrebbe lavorare sul campo potrebbe fornirti alcuni con cui giocare.

  2. Strumenti costosi che, suggerisco, puoi iniziare a capire se raggiungi un istituto di ricerca e / o un settore sono Weightless P , SigFox , LORAWAN , ecc. Questi ti daranno approfondimenti dettagliati sulla telecomunicazione, stack come 3G e LTE e la loro partecipazione a IoT e Industria 4.0 .

  3. L'IoT sta progredendo nei campi della casa intelligente e dell'automazione , quindi puoi guardare strumenti come openHAB e OpenThread e come uno studente di informatica sviluppare utili API.

  4. Ultimo, ma non meno importante, qualsiasi tipo di dispositivo di piattaforma open source come Raspberry Pis e altri microcontrollori può essere utilizzato in combinazione con i moduli di comunicazione wireless delle suddette tecnologie per realizzare soluzioni IoT semplici e / o complesse.

Utensili

Come tecnico IoT, linguaggi di programmazione come C / C ++, Java e Python ti porteranno molto lontano. Lo sviluppo di frontend, HTML, CSS, JavaScript e jQuery, ecc. Ti darà una migliore comprensione della gestione di tipi di dati Internet come JSON, XML, testo normale, CBOR , ecc. E backend come Node.js, Flask by Python e Ruby on Rails ti aiuterà a configurare i modelli di client server utilizzati più frequentemente.

I repository Git e open source ti daranno un balzo in avanti nelle applicazioni e nelle varie API che possono essere utilizzate per i tuoi prossimi progetti.

Più ti immergi in profondità, migliori saranno le tue capacità di gestione degli strumenti e la comprensione dell'IoT.


7

IoT gestisce la gamma dell'informatica e copre una vasta gamma di tecnologie, implementazioni e tattiche. In poche parole, significa solo che le cose sono connesse a un canale di comunicazione, ad esempio Internet. Comprendere come le cose si collegano alle cose è probabilmente la chiave: messaggistica, eventi, flussi.

Prenderei alcuni piccoli dispositivi, non importa cosa siano, ma il più semplice è basato su Arduino o basato su Pi. Ottieni qualcosa con WiFi o qualcosa che è supportato da un cloud esistente, ad esempio Photon.

Attaccare alcuni sensori su di esso. La temperatura è l'esempio canonico. Inizia ad aspirare i dati e archiviarli. Quindi prendere quei dati e analizzarli; qualsiasi numero di modi per farlo.

Se sei più interessato al lato dell'analisi (la comunicazione non è davvero la cosa difficile qui - le biblioteche gestiscono che sia WiFi, BT, ZigBee, ...) allora ci sono molti set di dati, ad esempio, i dati del tornello della metropolitana di New York .


7

L'Internet of Things è enorme. Consiste non solo nell'informatica che sta dietro, ma anche nelle applicazioni domestiche come Google Home, ecc. Se finisci per entrare nelle vendite, sapere qualcosa sui dispositivi disponibili potrebbe essere utile.

Io personalmente consiglio un paio di cose:

1. Iscriviti a buone riviste.

Ci sono tonnellate di riviste e articoli aggiornati disponibili là fuori che ti aiuteranno a rimanere in sintonia con ciò che sta accadendo nel mondo dell'IoT; La rivista di evoluzione IoT è quella che leggo spesso. Un altro con molte preziose informazioni tecniche è questa rivista M2M .

2. Ottieni alcuni dispositivi IoT.

Questo non fa molto per il tuo informatica, ma ti familiarizza con ciò che è disponibile. A seconda del campo in cui lavori, potrebbe essere utile una vasta conoscenza generale di ciò che è disponibile. Prendi in considerazione l'acquisto e l'installazione di alcuni switch IoT o la creazione di dispositivi IoT personalizzati in tutta la casa.

Solo i miei 2 centesimi (che arrotondano per difetto in Canada), ma spero che sia d'aiuto!


1
Un ampio background è estremamente utile, anche se ti aiuta solo a parlare con esperti in altre aree.
Sean Houlihane,

3

Come hanno affermato le altre risposte, il modo migliore per imparare è fare: in questo caso, immergersi e progettare un dispositivo dall'inizio alla fine per avere un'idea dei processi e dei passaggi coinvolti nello sviluppo dell'IoT.

È un problema molto simile a quello che ti imbatti nell'ingegneria / programmazione del software: molti corsi universitari insegnano ai loro studenti l' informatica , ovvero la teoria e i concetti alla base dello sviluppo del software. Ma, dopo 3 o 4 anni di apprendimento, vengono lanciati nel mondo per trovare un lavoro di programmazione e mancano delle reali abilità pratiche di cui hai bisogno per essere uno sviluppatore di successo.

In India, si afferma che solo il 7% dei laureati è effettivamente impiegabile come ingegnere informatico, perché:

Mentre il vasto numero di studenti di ingegneria nel paese studiano i loro libri di testo, danno gli esami e raccolgono la laurea, è solo quando incontrano i problemi del mondo reale che si rendono conto della loro carenza. A quel punto, devono impiegare più tempo per abituarsi o soffrire la disoccupazione.

Sono sicuro che qui puoi vedere il parallelo: se vuoi entrare nel campo dell'IoT, devi essere in grado di capire come sviluppare un dispositivo e l'infrastruttura di cui ha bisogno .


Alcune cose da considerare, tuttavia, quando inizi a realizzare il tuo prototipo:

  • Non deve essere rivoluzionario: come progetto di apprendimento, non c'è niente di sbagliato nel fare qualcosa di semplice. Il punto chiave qui è avere un obiettivo specifico raggiungibile .

  • Una volta che hai il tuo obiettivo, suddividere l'attività in passaggi . Sarà difficile ; se è il tuo primo progetto, ti sentirai un po 'perso. L'importante qui è ...

  • Avere un gruppo di persone che possono aiutarti. Se sei in un istituto di istruzione, sei fortunato: ci saranno un sacco di persone appassionate e competenti. È quasi certo che saranno interessati e che vorranno aiutarti; dopo tutto, tutti dovrebbero essere loro perché l'informatica è la loro passione!

Se non riesci a trovare qualcuno che possa aiutarti, ci sono sempre siti per appassionati, esperti e utenti esperti che possono darti alcuni suggerimenti!


3

Suggerirei di realizzare il tuo progetto.

Ho trovato molto buono il libro di Derek Molloy Exploring BeagleBone .

È quindi possibile effettuare le seguenti operazioni

  • Ottieni un Beaglebone Black
  • Fai tutti i progetti nel libro di Derek, (una buona introduzione all'elettronica e ai sensori per l'IoT)
  • Estendi un progetto
  • Pubblica il tuo progetto su GitHub o Bitbucket

Quando vai per un'intervista puoi ora parlare del progetto IoT che hai fatto. Ricorda che è attualmente in esecuzione dal vivo e che è su GitHub se il datore di lavoro vuole saperne di più.

Ciò dimostra a un datore di lavoro che sei veramente interessato all'IoT, hai competenza nel settore ed è un ottimo punto di discussione per un'intervista.


2

Se non hai creato un'implementazione di un'applicazione incorporata, sarai molto indietro rispetto ai tuoi colleghi più esperti. Chiaramente sarete limitati dal campo prescelto, ma idealmente dovreste avere esperienza pratica con l'intero stack - dal sensore alla proposta di valore. Ciò che è più prezioso in questa fase è trovare problemi, piuttosto che un buon risultato.


2

Passaggio 1: smetti di passare così tanto tempo a giocare ai videogiochi

Passaggio 2: avvia un progetto semplice e diventa davvero bravo nella ricerca di Google. Suddividi ogni parte del progetto in bit più piccoli e più gestibili. Risolvi ogni problema uno alla volta, quindi passa al successivo fino al completamento del progetto.

Imparerai preziose lezioni lungo il percorso che potrai quindi utilizzare in altri progetti più complicati.

Ad esempio, al momento sto lavorando a un pannello solare con rilevamento automatico del sole che registra i dati di carica e batteria su una dashboard online. La prima cosa che dovevo fare era capire come far lampeggiare un led su un ESP8266 usando l'IDE di Arduino. Quindi ho dovuto capire come avrei ottenuto letture di luce e tensione con e input analogico. Ogni passaggio ha richiesto da un'ora a giorni per capire, ma finora ho imparato molto sull'elettronica e su come il codice che scrivo interagisce con ogni componente.

Ovviamente l'idea per il tuo progetto deve essere qualcosa che ti senti abbastanza appassionato da riuscire a completarlo.

La cosa principale che trovo sempre è che se mi diverto, più voglio farlo. Ma davvero, non c'è molto sull'IoT che non è divertente!


1

Ero un Computer Geek, la mia rovina era la matematica, a causa delle difficoltà di apprendimento la mia matematica di base è a livello di uno studente di classe di accoglienza, e lo sarà sempre.

Il modo in cui ho imparato su computer, sperimentazione, youtube, tentativi ed errori, pazienza.

Il 90% dei computer è pazienza e l'altro 10% è ripetizione.

Se sei interessato ai computer, coltivalo e allevalo come tuo figlio. Il tuo interesse ti ringrazierà un giorno.

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.