- Systems programming
Implementation and maintenance of real time kernels, firmware, boot loaders, device drivers, and programming utilities. Optimization of code for specific systems and architectures. Design, implementation, optimization, and debugging of parallel algorithms and programs.
Design and implementation of communication protocols from the data link to the application layers. Verification of protocol design and testing of protocol implementation.
Design and implementation of motor and other device control systems, sensor reading and filtering, and machine vision systems. Design and implementation of autonomous behavior systems.
- Network, Unix system setup and administration
Set-up of networks, including firewalls, DMZs, and external and internal servers. Configuration and maintenance of network infrastructure (NTP, DNS, IPv6, SNMP, SMTP, NFS, SMB, etc.).