Bir Bilgisayar Bilimi öğrencisi olarak, resmi eğitim dışındaki bir IoT mesleği için becerileri nasıl geliştirebilirim?


25

Bilgisayar Bilimi ile ilgili bir alanda başarılı olmak için, bir üniversite öğrencisinin sadece bir derece almaktan çok daha fazlasını yapması gerekir - bu alanda başkalarıyla rekabet edebilmek için yukarıda ve öteye gitmeleri gerekir.

Bir CS öğrencisi olarak, IoT'nin yazılım yönü konusunda nispeten rahatım, ancak elektronik kısımdan ve Internet etkin bir sensör / cihazın genel yapısından daha az memnunum.

IoT açısından, becerilerimi geliştirmek için ne yapabilirim? Özellikle, ileride bir işe girme ya da alanda ilerlememe yardımcı olmak için CS kursum için üniversitede öğretilemeyecek şeyler ile ilgileniyorum.


3
Üniversitede IoT ile ilgili herhangi bir ödev yapabilir misiniz? Birkaç Ahududu Pi Zero W (veya benzerleri, ancak en ucuz olanları) satın alın, bir proje düşünün. Belki bir sensör şapka olsun; Bunu başaramazsanız, verilerinizi besleyecek ücretsiz bir JSON API'si bulun ve verileri bir web sitesinde yayınlayın. Öyleyse yukarı çalış. Zigbee ve MQTT'ye bakın . İnsanlara gösterebileceğiniz birkaç GitHub projesi veya web sitesi yayınlayın. Belki daha büyük, mevcut bir FOSS projesine dahil olabilirsiniz. Küçükten başlayın, yukarı çıkın, karmaşıklık ekleyin ve görünür hale getirin, ardından CV'nize ekleyin.
Mawg

FWIW, bir sürü Zigbee iş ilanı görüyorum, ancak şu ana kadar MQTT için hiçbiri yoktu, ama siz yerinde olsam hala MQTT'ye bakıyordum.
Mawg

Yanıtlar:


16

Şimdi IoT'yi öğreten bir bölümdeki bir üniversite hocası oldum ve elleriniz bir dereceden çok bazı oyuncaklar ile kirlenmeye geldiğinde gözlemleriniz doğru . Birçok bilgisayar bilimcisi, IoT'nin ilginç bir uygulama haline geldiği benzersiz çözümler bulmak için iletişim mühendisleri, üretim mühendisleri gibi mühendislerle işbirliği içinde çalışır.

Sanırım aşağıdaki gibi farklı iletişim protokolü yığınlarına bakarak başlayabilirsiniz :

  1. Kablosuz sensör ağları ve iyi bilinen ZigBee gibi alanları içeren IEEE 802.15.4 . Göz at Contiki-OS ve İSYAN-OS . Sensör düğümleri kendileri için biraz daha maliyetlidir, ancak sahada çalışabilecek bir üniversite departmanı size biraz oynamayı sağlayabilir.

  2. Bir araştırma enstitüsüne ve / veya endüstriye ulaşmanız durumunda Ağırlıksız P , SigFox , LORAWAN , vb. İse , anlamaya başlayabileceğiniz pahalı araçlar . Bunlar telekomünikasyon, 3G ve LTE gibi yığınlar ve bunların katılımına ilişkin ayrıntılı bilgiler verecektir. IoT ve Endüstri 4.0 .

  3. IoT akıllı ev ve otomasyon alanlarında ilerlemektedir , böylece openHAB ve OpenThread gibi araçlara bakabilir ve bir bilgisayar bilimi öğrencisi olarak faydalı API'ler geliştirebilirsiniz.

  4. Son olarak, en azından, en az değil, Raspberry Pis ve diğer mikrodenetleyiciler gibi herhangi bir açık kaynaklı platform cihazı, basit ve / veya karmaşık IoT çözümleri bulmak için yukarıda belirtilen teknolojilerin kablosuz iletişim modülleriyle birlikte kullanılabilir.

Araçlar

IoT teknoloji uzmanı olarak C / C ++, Java ve Python gibi dilleri programlamak sizi çok uzun zaman alacak. Ön uç geliştirme, HTML, CSS, JavaScript ve jQuery, vb. Size JSON, XML, düz metin, CBOR vb. İnternet veri türlerini ve Node.js, Python tarafından Flask ve Ruby gibi arka uçları kullanma konusunda daha iyi bir anlayış sağlayacaktır . Raylar , en sık kullanılan sunucu istemci modellerini ayarlamanıza yardımcı olacaktır.

Git ve açık kaynak havuzları, gelecek projeleriniz için kullanılabilecek uygulamalara ve çeşitli API'lara bir sıçrama yapacaktır.

Ne kadar derine daldıkça, takım kullanma becerileriniz ve IoT anlayışınız o kadar iyi olur.


7

IoT, bilgisayar gamını yönetiyor ve çok çeşitli teknolojileri, uygulamaları ve taktikleri kapsamaktadır. Özet olarak, bu sadece olayların bir iletişim kanalına, örneğin internete bağlı olduğu anlamına gelir. İşlerin bir şeylere nasıl bağlandığını anlamak muhtemelen anahtardır: mesajlaşma, olay oluşturma, akışlar.

Birkaç küçük cihaz alırdım, ne oldukları önemli değil, ama en kolayı Arduino tabanlı ya da Pi tabanlı. WiFi ile veya mevcut bir bulut tarafından desteklenen bir şey edinin, örneğin, Foton.

Üzerine bazı sensörler yapıştırın. Sıcaklık kanonik örnektir. Verileri emme ve saklamaya başlayın. O zaman bu verileri alın ve analiz edin; Bunu yapmanın herhangi bir sayıda yolu.

Analiz tarafında daha çok ilgileniyorsanız (iletişim gerçekten zor olan bir şey değil - kütüphaneler WiFi, BT, ZigBee, ... olup olmadığını ele alır) o zaman NYC metro turnike verileri gibi birçok veri seti vardır. .


7

Nesnelerin İnterneti çok büyük. Yalnızca arkasındaki bilgisayar bilimlerinden değil, aynı zamanda Google Home gibi ev uygulamalarından da oluşur.

Ben şahsen bir kaç önerimiz:

1. İyi dergilere abone olun.

IoT dünyasında olanlarla senkronize olmanıza yardımcı olacak tonlarca dergi ve güncel makaleler var; IoT evrim dergisi sık okuduğum bir dergiydi . Çok değerli teknik bilgilere sahip bir diğeri de bu M2M dergisi .

2. Bazı IoT cihazlarını alın.

Bu, bilgisayar bilimleriniz için pek bir şey yapmaz, ancak sizi neyin mevcut olduğunu iyi bilir. Hangi alanda çalıştığınıza bağlı olarak, neyin mevcut olduğuna dair kapsamlı bir genel tarama bilgisi yardımcı olabilir. Birkaç IoT anahtarı alıp, kendi evinizde kendi IoT cihazlarını oluşturmayı ve hatta kurmayı düşünün.

Sadece 2 sentim (Kanada'da yuvarlar), ama umarım yardımı olur!


1
Geniş arka plan oldukça yararlıdır - yalnızca diğer alanlardaki uzmanlarla konuşmanıza yardımcı olsa bile.
Sean Houlihane,

3

Diğer cevaplar belirttiğimiz gibi, öğrenmenin en iyi yolu gereğidir yapıyor bu durumda, dalış -in ve IOT gelişiminde rol oynayan süreçler ve adımlar için bir fikir edinmesini baştan sona bir cihaz tasarımı.

Bu, yazılım mühendisliği / programlamada karşılaştığınızla çok benzer bir problemdir — birçok Üniversite dersi öğrencilerine bilgisayar bilimlerini , yani yazılım geliştirmenin arkasındaki teori ve kavramları öğretir . Ancak, 3 veya 4 yıllık öğrenimden sonra, bir programlama işi bulmak için dünyaya atıldılar ve başarılı bir geliştirici olmak için ihtiyacınız olan gerçek pratik becerilerden yoksunlar.

Hindistan'da, mezunların yalnızca% 7'sinin aslında bir yazılım mühendisi olarak istihdam edilebildiği iddiası var , çünkü:

Ülkedeki çok sayıda mühendislik öğrencisi ders kitaplarını incelerken, sınavlarını verirken ve diplomalarını alırken, yalnızca gerçek dünyadaki sorunlarla karşılaştığında eksikliklerini fark ederler. O zamana kadar, kendileri becerebilmeleri veya işsizliklerinden muzdarip olmaları için ekstra zaman ayırmaları gerekiyor.

Paralelleri burada görebildiğinize eminim - IoT alanına girmek istiyorsanız, nasıl bir cihaz ve onun ihtiyaç duyduğu altyapının geliştirilebileceğini anlamanız gerekir .


Yine de, prototipinizi yapmaya başladığınızda dikkate alınması gereken birkaç şey:

  • Devrimci olması gerekmiyor - bir öğrenme projesi olarak, basit bir şey yapmanın yanlış bir tarafı yok. Buradaki kilit nokta, ulaşılabilir ve belirli bir hedefe sahip olmaktır .

  • Hedefinize ulaştığınızda , görevi adımlara bölün . Zor olacak ; ilk projen buysa, kendini biraz kaybolmuş hissetmek zorundasın. Burada önemli olan şey ...

  • Size yardım edebilecek bir grup insan var. Bir eğitim kurumundaysanız, şansınız yaver gidecektir - tutkulu, bilgili insanlar olacaktır. İlgilenecekleri ve size yardım etmek isteyecekleri neredeyse kesin; Sonuçta, herkes onların olması lazım çünkü Computer Science onların tutkusu!

Yardımcı olabilecek birini bulamazsanız, merak duyanlar, uzmanlar ve size bazı önerilerde bulunabilecek uzman kullanıcılar için her zaman siteler vardır !


3

Kendi projeni yapmanı öneririm.

Derek Molloy'un " Exploring BeagleBone " kitabını çok iyi buldum .

Daha sonra aşağıdakileri yapabilirsiniz

  • Beaglebone Black alın
  • Derek'in kitabındaki tüm projeleri yapın (IoT için elektronik ve sensörlere iyi bir giriş)
  • Bir projeyi genişlet
  • Projenizi GitHub veya Bitbucket'te yayınlayın

Bir röportaj için gittiğinizde şimdi yaptığınız IoT projesi hakkında konuşabilirsiniz. Şu anda canlı yayınlandığından ve işveren daha fazla bilgi edinmek istiyorsa GitHub'da olduğundan bahsedin.

Bu, IoT’ye gerçekten ilgi duyduğunuzu, alanda uzman olduğunuzu ve bir röportaj için harika bir konuşma noktası olduğunu gösteriyor.


2

Gömülü bir uygulamanın bir uygulamasını oluşturmadıysanız, daha deneyimli meslektaşlarınızın arkasında olacaksınız. Açıkça, seçtiğiniz alanla sınırlandırılacaksınız, ancak ideal olarak, tüm istifleyicide pratik bir deneyime sahip olmalısınız - değer önerisi. Bu aşamada en değerli olan, iyi bir sonuçtan ziyade problemleri bulmaktır.


2

1. Adım: Video oyunları oynarken çok fazla zaman geçirmeyi bırakın

2. Adım: Basit bir proje başlatın ve Google aramada gerçekten başarılı olun. Projenin her bir parçasını daha küçük, daha kolay yönetilebilir bitlere bölün. Her sorunu birer birer çözün, ardından projeniz tamamlanana kadar bir sonrakine geçin.

Daha karmaşık diğer projelerde kullanabileceğiniz yol boyunca değerli dersler öğreneceksiniz.

Örneğin, şu anda şarj ve batarya verilerini çevrimiçi bir gösterge panosuna kaydeden otomatik güneş izleme güneş paneli üzerinde çalışıyorum. Yapmam gereken ilk şey, Arduino IDE'yi kullanarak bir ESP8266'da nasıl yanıp sönmeye başladığını bulmaktı. Sonra nasıl ve nasıl ışık ve gerilim okumaları analog giriş ile alacağımı bulmak zorunda kaldı. Her adım bir saatten güne kadar bir zaman aldı, ancak şimdiye kadar elektronikler ve yazdığım kodun her bileşenle nasıl etkileşime girdiği hakkında çok şey öğrendim.

Elbette, projeniz için olan fikir, tamamlanmasını görmek için yeterince tutkulu hissettiğiniz bir şey olmak zorunda.

Her zaman bulduğum en önemli şey, eğer onunla eğlenirsem, daha çok yapmak istiyorum. Ama gerçekten, IoT hakkında eğlenceli olmayan pek bir şey yok!


1

Bilgisayar Geek'tim, çöküşüm matematikti, öğrenme güçlüğü yüzünden temel matematiğim bir resepsiyon sınıfı öğrencisi seviyesinde ve her zaman olacak.

Bilgisayarlar, deneyler, youtube, deneme yanılma, sabır hakkında öğrendiğim yol.

Bilgisayarların% 90'ı sabittir ve diğer% 10'u tekrardır.

Bilgisayarlarla ilgileniyorsanız, onu besleyin ve kendi çocuğunuz gibi yükseltin. İlginiz bir gün size teşekkür edecek.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.