
After The Training is over, The Trainee is expected to possess the following technical skills:
1. Linux system administration (users, services, permissions, networking)
2. Bash scripting and automation
3. GitLab workflows: branching, MRs, reviews, CI/CD basics
4. C programming & data structures on Linux
5. C++ OOP & STL using Eclipse on Linux
6. Rust fundamentals for embedded/AI (safe concurrency)
7. Python for embedded (GPIO/serial/sensors)
8. Practical linear algebra & calculus for ML
9. POSIX file I/O (open/read/write/lseek, mmap, fcntl)
10. IPC: pipes/FIFOs, message queues, shared memory (SysV/POSIX)
11. Process control: fork/exec, signals, environment
12. Threads & scheduling with pthreads (attributes, policies)
13. Synchronization: mutex/rwlock/condvar, semaphores, atomics, barriers
14. Event-driven I/O: non-blocking, select/poll/epoll
15. Timers, timeouts, watchdog/backoff patterns
16. Profiling & debugging: strace, perf, gdb, valgrind
17. Data analytics pipelines from C/Python; CSV/JSON tooling
18. MySQL integration (C API, prepared statements, transactions)
19. TCP/IPv4 socket programming (bind/listen/accept/connect)
20. High-performance server patterns: backpressure, keep-alive, graceful shutdown
21. Protocol framing, error handling, benchmarking methodology
22. ARM Cortex fundamentals: memory map, interrupts, peripherals
23. Cross-compilation toolchains; SWD/JTAG bring-up
24. Boot flow: ROM → U-Boot → kernel → init/rootfs
25. SD/MMC/SDIO storage, partitioning (MBR/GPT), filesystems (FAT/ext4)
26. Device Tree overlays/capes & pin-mux on Pi/BBB
27. Buildroot (Yocto intro), kernel config, out-of-tree modules (kbuild/DKMS)
28. systemd services; packaging (.deb/.ipk) for deployment
29. Touchscreen GUI enablement & calibration (tslib/libinput)
30. TFTP/net-boot workflows; OTA planning
31. Linux network administration: iproute2, netplan/systemd-networkd, routing/VLANs
32. Core services: SSH, DHCP, DNS, HTTP/Nginx, NTP, FTP/TFTP, Samba/NFS
33. Host firewalls & hardening: nftables/ufw, keys/certs, fail2ban
34. Diagnostics toolkit: ss, tcpdump/Wireshark, mtr, traceroute, dig, journalctl
35. TCP/IPv6 & dual-stack patterns; getaddrinfo, scope IDs
36. NETLINK sockets for kernel networking control (routes, neighbors, links)
37. Character driver development: file_operations, ioctl, sysfs/udev, poll/epoll
38. Serial (16550A/PL011), GPIO, and parallel-port (74LS244) drivers
39. Driver concurrency & IRQ handling; wait queues/completions
40. Driver QA: ftrace/perf/eBPF, dynamic debug, kgdb/kdump, DKMS + CI
41. Block layer: blk-mq, request queues, gendisk, I/O schedulers
42. SD/MMC block drivers: SDHCI, SDIO vs SPI, DMA/SG; mkfs/mount validation
43. USB host & gadget drivers: descriptors/endpoints, URBs, functionfs/configfs
44. Ethernet drivers: net_device, NAPI, DMA rings, ethtool/offloads
45. Wi-Fi integration: cfg80211/mac80211, regulatory, wpa_supplicant/hostapd
46. PCI/PCIe drivers: probe/remove, BAR mapping, config space, MSI/MSI-X
47. SPI/I²C/CAN: MCP3008/MAX31855, BME280, SocketCAN (can0/vcan, filters/bit-timing)
48. IoT architecture & protocols: MQTT/CoAP/HTTP; device shadows & provisioning
49. Edge AI on ARM: OpenCV pipelines, ONNX/TFLite, quantization/pruning; MLOps (MLflow/DVC)
50. Cloud & DevOps: Docker, Kubernetes (K3s/EKS), Helm/GitOps, Terraform IaC, CI/CD, observability & SRE basics