tohum
← Blog’a dön

Gömülü IoT Geliştiricisinin Alet Çantasında Ustalaşmak

5’ten 1’e Ölçek

Günümüzün hiper bağlantılı dünyasında bir gömülü geliştirici firmware’i, donanımı, radyo bağlantılarını ve cloud iş akışlarını aynı anda çevirmek zorunda. Tek bir parçayı atlayın, o “hızlı” firmware dokunuşu haftalarca sürecek bir debug maratonuna dönüşebilir. Biz bunu zor yoldan öğrendik: ESP32, SIMCom hücresel bağlantı ve AWS IoT Core üzerine kurulu, güneş enerjili bir toprak izleme düğümünü sahaya çıkarırken. Bu deneyim bir gerçeği net biçimde ortaya koydu: öğrenme planınız, malzeme listenizi (BOM) birebir yansıtmak zorunda.

Planı odaklı tutmak için her yetkinliği 5’ten 1’e bir ölçekle derecelendiriyoruz — teknolojiden tamamen bağımsız bir çerçeve:

Seviye

Ne anlama geliyor

Neden önemli

5 = Olmazsa olmaz

Temel dil, vazgeçilmez araçlar, temel kavramlar

Bunlar olmadan ürün çıkaramazsınız

4 = Optimize ediciler

CI/CD, otomatik test, güvenlik sıkılaştırma, performans ayarı

Prototipi sağlam ürüne dönüştürür

3 = İş akışı hızlandırıcılar

Dashboard’lar, ileri debugging, cloud operasyonları

Günlük geliştirmeyi akıcılaştırır

2 = Olsa iyi olur

İleride isteyeceğiniz özelleşmiş yetenekler

Vakit buldukça cila katın

1 = Uzmanlıklar

Niş alanlar veya gelecekteki ölçekleme için derin dalışlar

Kullanım senaryosu gerektirdiğinde el atın

Bu ölçeği her yerde nasıl uygularsınız

  1. Nihai hedefi tanımlayın. “İşe hazır” ya da “üretime hazır” tam olarak neye benziyor?
  2. 5’leri listeleyin. Mutlak hayatta kalma kiti.
  3. 4’leri belirleyin. Çözümü sağlamlaştıran ve ölçekleyen pratikler.
  4. 3’leri doldurun. Hayat kalitesi araçları ve optimizasyonlar.
  5. 2’leri ve 1’leri ekleyin. Daha büyük ekipler veya ileri özellikler için özelleşmiş derinlik.

Her alana taşınabildiğinin kısa kanıtı

Her konuyu etkisine ve kullanım sıklığına göre puanladığınızda önünüze net bir yol çıkar, boğulma hissinden kurtulursunuz.


ESP32 + SIM + AWS yığınımızda 5’ler neye benziyor

  1. C/C++ akıcılığı – ESP-IDF’in ve FreeRTOS hook’larının dili.
  2. ESP-IDF (veya Arduino-ESP32) hakimiyeti – Wi-Fi, BLE, ADC, deep-sleep API’leri.
  3. Elektronik temelleri – SIM UART’larında level-shifting, NPK problarını okumak, EMI hijyeni.
  4. Güç bütçeleme ve Li-ion/güneş şarjı – 4 Ah’lik bir 18650’yi bulutlu haftalar boyunca hayatta tutmak.
  5. Sağlam bağlantı (Wi-Fi, SIM AT, MQTT/TLS) – sensör verisini AWS’e güvenli biçimde akıtmak.

Bu beşinde ustalaşın, çalışan bir prototip çıkarabilirsiniz. 4’lere tırmanın — CI pipeline’ları, ileri FreeRTOS, OTA, güvenlik — sahada ayakta kalan bir ürününüz olur. 3’ler, 2’ler ve 1’ler ise profesyonel alet çantasını dashboard’lar, uyumluluk ve alana özgü derinlikle tamamlar.

Devamındaki yazı bir kontrol listesi değil; gerçek donanım seçimlerine oturtulmuş sıralı bir yol haritası. 5’lerle başlayın, 4’lerden mezun olun; 3’ten 1’e uzanan bölgeye daldığınızda ise onları en çok işe yarayacakları yerde uygulayacak hem özgüvene hem bağlama sahip olacaksınız. Dalın ve bu alet çantası sizi breadboard’dan üretime — ve ötesine — taşısın.

Gömülü Geliştiriciler için Beceri Setleri

Gösterge – Önem
5 = Vazgeçilmez (günlük iş için olmazsa olmaz)
4 = Çok önemli (çoğu projede gerekli)
3 = Faydalı (sık sık işe yarar, yakında öğrenin)
2 = Olsa iyi olur (vakit buldukça öğrenin)
1 = Özelleşmiş / duruma bağlı

Beceri / Araç

ESP32 tabanlı bir toprak ölçüm ürünü için neden önemli

Önem

1

C / C++

ESP-IDF’in, Arduino core’un ve çevre birimi driver’larının ana dilleri.

5

2

ESP-IDF (native) veya Arduino-ESP32

Wi-Fi, BLE, GPIO, ADC, UART, I²C ve FreeRTOS API’lerine doğrudan erişim sağlar.

5

3

FreeRTOS temelleri

Task zamanlama, watchdog’lar, kuyruklar ve güç verimli uyku modları.

4

4

Git ve GitHub / GitLab

Versiyon kontrolü, kod incelemesi ve CI hook’ları.

5

5

VS Code

Güçlü ESP-IDF ve PlatformIO eklentilerine sahip, hafif ve çapraz platform bir IDE.

4

6

PlatformIO

Gömülü projeleri VS Code içinden derler, flash’lar, unit-test’ler ve statik analizden geçirir.

4

7

Linux CLI / WSL

Toolchain’ler, build script’leri, OpenOCD debugging ve container’lanmış CI runner’lar.

3

8

Unit-test framework’ü (Unity / CppUTest)

Sensör matematiği, haberleşme parser’ları ve batarya durumu mantığı için regresyon testleri.

3

9

Continuous Integration (GitHub Actions / GitLab CI)

Her push’ta build, test, lint ve firmware boyutu kontrollerini otomatikleştirir.

3

10

Jira (işler) ve Confluence (dokümanlar)

Ekip içinde görevleri, bug’ları, gereksinimleri ve tasarım notlarını takip eder.

3

11

Dijital ve Analog Elektronik

NPK sensör çıkışlarını okumak, SIM modül UART’ında level-shifting, EMI azaltma.

5

12

PCB tasarımı (KiCad / Altium)

ESP32, NPK arayüzü, Li-ion şarj devresi ve güneş MPPT’sini barındıran özel kart.

4

13

Güç bütçeleme ve Güneş–Li-ion şarjı

Panel, şarj IC’si ve dönüştürücülerin boyutlandırılması, düşük güçlü firmware durumları.

5

14

Batarya yönetimi (18650 güvenliği ve coulomb sayımı)

Aşırı/düşük gerilime karşı korur ve SoC tahmini sağlar.

4

15

Hücresel haberleşme (SIMCom AT komutları, PPP, TCP/IP)

Sahada Wi-Fi yokken cloud bağlantısını getirir.

5

16

IoT protokolleri (MQTT / HTTPS)

Sunucuya veya cloud’a hafif ve güvenli veri yükleme.

4

17

TLS / mbedTLS güvenlik temelleri

Veriyi şifreler ve cihazı cloud uç noktalarına doğrular.

4

18

Sensör kalibrasyonu ve kompanzasyon

NPK okumalarına etki eden sıcaklık / nem faktörleri; saha kalibrasyon eğrileri.

5

19

Veri kaydı ve OTA depolama (SPIFFS, LittleFS, SD)

Bağlantı kesildiğinde yerel yedek; firmware güncellemesi hazırlığı.

3

20

Uzaktan OTA güncelleme akışı

Sahadaki binlerce cihazı bakım yapılabilir tutar.

4

21

Kontrol ve Kestirim teorisi

Opsiyonel — ileri filtreleme (Kalman, PID) veya uyarlanabilir örnekleme için yardımcı olur.

2

22

Python / Bash scripting

Log ayrıştırma, üretim hattında flash’lama, test otomasyonu.

3

23

Cloud ve dashboard temelleri (AWS IoT Core, Azure IoT, InfluxDB + Grafana)

Toprak metriklerini depolar, görselleştirir ve alarm üretir.

3

24

Regülasyon ve çevresel uyumluluk (CE, FCC, IP sınıfı)

Yasal dağıtımı ve saha dayanıklılığını güvence altına alır.

3

25

Dokümantasyon araçları (Markdown, Doxygen)

Bakımı kolay API ve donanım tasarım dokümanları üretir.

3

Tabloyu nasıl okumalı

1 – C/C++

Seviye: 1 – Sıfırdan Başlayan
– C sözdizimi ve yapısı: derleme modeli (kaynak → object → çalıştırılabilir), main() fonksiyonu
– Temel veri tipleri: int, char, float, double, bool
– Değişkenler ve sabitler: bildirim, ilklendirme, const niteleyicisi
– Operatörler: aritmetik (+, –, *, /, %), atama, artırma/azaltma
– Kontrol akışı: if/else, switch, for/while/do-while döngüleri
– Basit G/Ç: printf, temel konsol çıktısı
– Pointer’lara giriş: pointer bildirimi, dereference
– Derleme ve debug: gcc -o ile derleme, temel derleyici hatalarını yorumlama

Seviye: 2 – Başlangıç
– Bellek ve pointer’lar: pointer aritmetiği, pointer’lar ile diziler, malloc/free’ye giriş
– Yapılandırılmış tipler: struct, union, typedef
– Preprocessor temelleri: #define, #include, include guard’lar
– Storage class’lar: auto, static, extern, kapsam ve linkage kuralları
– String’ler ve diziler: char[], string fonksiyonları (strcpy, strlen vb.)
– Modüler kod: birden çok .c/.h dosyasına bölme, makefile temelleri (kurallar, hedefler)
– Temel debug araçları: gdb ile adımlama, breakpoint’ler, değişkenleri inceleme

Seviye: 3 – Orta Düzey
– Dinamik bellek yönetimi: heap ile stack, yaygın sızıntı desenleri, Valgrind gibi araçların kullanımı
– Dosya G/Ç: fopen/fread/fwrite/fclose, dosya pointer’ları, hata yönetimi
– Bitsel işlemler: mask’lar, kaydırmalar, bit set etme/temizleme, enum ve bit-field’lar
– Fonksiyon pointer’ları: callback’ler, dispatch tabloları
– Hata yönetimi: dönüş kodları, errno
– C++ temelleri: sınıflar ve nesneler, constructor/destructor’lar, erişim belirleyiciler
– STL temelleri: std::vector, std::string, std::map ve iterator’ların basit kullanımı
– Namespace’ler ve header organizasyonu

Seviye: 4 – İleri Düzey
– Gömülü C özellikleri: volatile, memory-mapped G/Ç, flash’ta ve RAM’de const
– Linker ve build sistemi: özel linker script’leri, section yerleşimi, optimizasyon bayrakları (-O2, -Os), cross-compilation toolchain’leri
– C++11/14/17 özellikleri: lambda’lar, auto, range-based for, constexpr, nullptr
– Smart pointer’lar ve RAII: unique_ptr, shared_ptr, kaynak yönetimi
– Template temelleri: fonksiyon ve sınıf template’leri, template specialization
– Multithreading: std::thread, mutex’ler, condition variable’lar, atomic tipler
– Gerçek zamanlı kavramlar: kesme servis rutinleri (ISR’ler), kritik bölgeler, priority inversion azaltma

Seviye: 5 – Uzman
– İleri template meta-programlama: variadic template’ler, SFINAE, type trait’ler
– Derin C++ nesne modeli: vtable’lar, nesne yerleşimi, ABI konuları
– Lock-free ve düşük gecikmeli eşzamanlılık: atomic’ler, memory ordering, wait-free algoritmalar
– Derleyici ve toolchain iç yapısı: GCC/Clang pass pipeline’ları, özel derleyici eklentileri yazma
– Performans ayarı: cache hizalama, branch prediction, derinlemesine profiling (örn. gprof, donanım sayaçları)
– Bare-metal port etme: newlib stub’ları yazma, minimal C runtime, bring-up kodu
– Standartlar ve güvenlik: MISRA-C/C++ uyumluluğu, statik analiz araçları (Coverity, Cppcheck)
– Framework katkısı: FreeRTOS veya ESP-IDF iç yapısı için driver yazma/optimize etme

2 – ESP-IDF (native) veya Arduino-ESP32

Seviye: 1 – Sıfırdan Başlayan
– ESP-IDF toolchain’ini (Python, Git, ESP-IDF script’leri) veya Arduino-ESP32 core’unu kurma
– ESP32 geliştirme için VS Code (veya Arduino IDE) kurulumu
– “Blink” örneğini derleyip flash’lama
– Proje düzenini keşfetme (CMakeLists.txt, sdkconfig veya platformio.ini)
– Temel idf.py (veya Arduino) komutlarını kullanma: build, clean, flash, monitor

Seviye: 2 – Başlangıç
– GPIO: pinleri yapılandırma, giriş okuma, LED sürme
– ADC: analog kanalları örnekleme, ham değerleri gerilime çevirme
– UART ve I²C: basit string veya byte gönderip alma
– Wi-Fi station modu: AP taraması, bağlanma, IP alma
– BLE peripheral: advertise etme, telefon uygulamasından bağlanma
– menuconfig ayarlarıyla (partition tablosu, log seviyesi) veya Arduino kart ayarlarıyla oynama

Seviye: 3 – Orta Düzey
– ESP-IDF framework’ü içinde FreeRTOS task’ları, kuyruklar ve timer’lar
– Wi-Fi events API’si: bağlanma/kopma olaylarını yönetme, yeniden bağlanma mantığı
– BLE client ve GATT: servisleri keşfetme, characteristic okuma/yazma
– SPI ve I²C: gerçek bir sensörü (örn. toprak nemi) entegre edip kalibre etme
– HTTP(S) OTA güncellemeleri: partition’ları kurma, güncellemeleri tetikleme
– esp_timer, ayrıntılı loglama (ESP_LOG*) ve hata kodlarının kullanımı

Seviye: 4 – İleri Düzey
– Yeniden kullanılabilir bileşenler (CMake Component API) veya özel Arduino kütüphaneleri oluşturma
– Özel partition tablosu oluşturma ve çalışma zamanında partition değiştirme
– Güvenli provisioning: SmartConfig, BLE tabanlı Wi-Fi kurulumu
– İleri BLE (L2CAP, mesh) örnekleri
– SPI DMA’yı ve I²C bus hız/timeout ayarlarını optimize etme
– MQTT over TLS için mbedTLS entegrasyonu
– Build/flash/test süreçlerini CI’da otomatikleştirme (GitHub Actions, ESP-IDF CI script’leri)

Seviye: 5 – Uzman
– ESP-IDF çekirdeğine yeni driver katkısı veya bug düzeltmesi (örn. ADC kalibrasyonu)
– Özel bootloader geliştirme veya ISR düzeyinde optimizasyonlar
– FreeRTOS heap bölgelerine ve zamanlayıcı parametrelerine ince ayar
– Secure boot ve flash şifrelemeyi uçtan uca uygulama
– Gerçek zamanlı izleme ve profiling (ESP-Trace, Perfcnt)
– Çok projeli CMake workspace’leri tasarlama
– Başkalarına mentorluk: ESP-IDF en iyi pratiklerini ve iç bileşen kütüphanelerini tanımlama

3 – FreeRTOS Temelleri

Seviye: 1 – Sıfırdan Başlayan
– RTOS’un ne olduğunu ve neden kullanıldığını anlama
– FreeRTOS’u kurma (ESP-IDF veya PlatformIO üzerinden) ve demo “hello world” task örneğini inceleme
– Tek bir task oluşturup başlatmanın temel API’sini öğrenme (xTaskCreate, vTaskStartScheduler)
– Sistem tick’ini ve zamanlayıcının task’lar arasında nasıl geçiş yaptığını keşfetme
– Bir task’ı sabit süre bloklamak için vTaskDelay kullanma

Seviye: 2 – Başlangıç
– Farklı önceliklerde ve stack boyutlarında birden çok task oluşturma
– Periyodik task zamanlaması için vTaskDelayUntil kullanma
– Kritik bölgeleri anlama ve uygulama (taskENTER_CRITICAL / taskEXIT_CRITICAL)
– Task durumlarını öğrenme (Running, Ready, Blocked, Suspended)
– Basit task kontrolü için vTaskSuspend / vTaskResume kullanma

Seviye: 3 – Orta Düzey
– Task’lar arasında kuyruklarla haberleşme (xQueueCreate, xQueueSend, xQueueReceive)
– Binary ve counting semaphore’larla task senkronizasyonu (xSemaphoreCreateBinary, xSemaphoreTake)
– Event Group’larla olay koordinasyonu (xEventGroupSetBits, xEventGroupWaitBits)
– Yazılım timer’ları kullanma (xTimerCreate, callback)
– Stack overflow’ları tespit edip yönetme

Seviye: 4 – İleri Düzey
– Bellek tahsisini optimize etme: heap şemalarını (heap_1…heap_5) seçip yapılandırma ve fragmantasyonu anlama
– Task notification’ları hafif binary semaphore veya doğrudan task’a veri mesajı olarak kullanma
– Düşük güçlü uygulamalar için tickless idle modunu yapılandırıp kullanma
– Çalışma zamanı istatistikleri üretip yorumlama (vTaskGetRunTimeStats)
– FreeRTOS+Trace veya Percepio Tracealyzer entegrasyonu

Seviye: 5 – Uzman
– FreeRTOS’u özel donanıma port etme veya ileri kullanım senaryoları için port katmanını değiştirme
– Özel zamanlayıcı politikaları veya hook fonksiyonları uygulayıp ayarlama (vApplicationIdleHook, vApplicationMallocFailedHook)
– İleri senkronizasyon primitifleriyle (priority inheritance’lı mutex’ler, recursive mutex’ler) karmaşık durum makineleri tasarlama
– Ekiplere en iyi pratikler, güvenlik (MISRA uyumlu kod) ve deterministik davranış ayarı konularında mentorluk

4 – Git ve GitHub/GitLab

Seviye: 1 – Sıfırdan Başlayan
– Git kurulumu; user.name ve user.email yapılandırması
– Repo başlatma (git init) ve mevcut repoları klonlama (git clone)
– Temel dosya takibi: git status, git add, git commit
– git log ile geçmişi görüntüleme, git diff ile değişiklikleri inceleme
– Dosyaları hariç tutmak için basit .gitignore

Seviye: 2 – Başlangıç
– Branch oluşturma ve geçiş yapma: git branch, git checkout/git switch
– Remote kurulumu: git remote add, git fetch, git pull, git push
– origin/main ile lokal branch’ler arasındaki farkı anlama
– Basit merge çakışmalarını editörle veya CLI ile çözme
– Commit’leri ve branch’leri GitHub/GitLab web arayüzünden gezme

Seviye: 3 – Orta Düzey
– Merge ile rebase: git merge, git rebase; hangisini ne zaman kullanacağını bilme
– Commit’leri temizlemek için interactive rebase (git rebase -i)
– Etiketleme: annotated ve lightweight tag oluşturma; git push –tags ile gönderme
– Pull request (GitHub) veya merge request (GitLab) ile çalışma: oluşturma, inceleme, birleştirme
– Temel CI iskeleti: basit bir GitHub Actions veya GitLab CI YAML dosyası ekleme

Seviye: 4 – İleri Düzey
– Submodule (git submodule) ve subtree yönetimi
– Client-side hook’lar (pre-commit, pre-push) ve basit server-side GitLab/GitHub hook’ları yazma
– Branch’leri koruma ve merge kontrollerini zorunlu kılma (status check’ler, onaylar)
– Cache ve artifact’larla çok aşamalı CI/CD pipeline’ları kurma
– Bug’ları bulmak için git bisect kullanma; belirli commit’leri cherry-pick etme

Seviye: 5 – Uzman
– GitLab/GitHub organizasyon ayarlarını yönetme: kullanıcı/grup izinleri, korumalı branch’ler
– Monorepo stratejileri tasarlama; büyük dosyaları Git LFS ile yönetme
– Özel Git araçları veya script’leri geliştirme (libgit2, hook’lar, otomasyon)
– Git iç yapısına derin dalış: nesne depolama, packfile’lar, ref’ler, index
– İş akışları tanımlayıp uygulatma (Gitflow, trunk-based, GitOps); ekibe en iyi pratikler konusunda mentorluk

5 – VS Code

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

6 – PlatformIO

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

7 – Linux CLI / WSL

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

8 – Unit-Test Framework’ü (Unity / CppUTest)

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

9 – Continuous Integration (GitHub Actions / GitLab CI)

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

10 – Jira ve Confluence

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

11 – Dijital ve Analog Elektronik

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

12 – PCB Tasarımı (KiCad / Altium)

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

13 – Güç Bütçeleme ve Güneş–Li-ion Şarjı

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

14 – Batarya Yönetimi (18650)

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

15 – Hücresel Haberleşme (SIMCom AT, PPP, TCP/IP)

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

16 – IoT Protokolleri (MQTT / HTTPS)

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

17 – TLS / mbedTLS Güvenlik Temelleri

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

18 – Sensör Kalibrasyonu ve Kompanzasyon

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

19 – Veri Kaydı ve OTA Depolama

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

20 – Uzaktan OTA Güncelleme Akışı

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

21 – Kontrol ve Kestirim Teorisi

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

22 – Python / Bash Scripting

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

23 – Cloud ve Dashboard Temelleri

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

24 – Regülasyon ve Çevresel Uyumluluk

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular:

25 – Dokümantasyon Araçları (Markdown, Doxygen)

Seviye: 1 – Sıfırdan Başlayan
Konular:

Seviye: 2 – Başlangıç
Konular:

Seviye: 3 – Orta Düzey
Konular:

Seviye: 4 – İleri Düzey
Konular:

Seviye: 5 – Uzman
Konular: