Technical Lead Software Engineer
Remote work arrangement as an embedded software engineer on the WiFi technologies team. Responsible for wireless technologies in embedded Linux and RTOS based products.Experience and familiarity with using Open Embedded and Yocto for building embedded Linux consumer electronics.Ported MediaTek's MT6630 Linux driver from kernel 3.10 to 4.9, integrating with ~30 API breaks in the cfg80211 and netdev subsystems. Wrote a Yocto recipe to deploy configs, firmware, and user space programs for the MT6630.Develops and maintains the Lightweight IP (LwIP) TCP/IP stack, which provides network communications (with WiFi/PPP link layers) for devices running an in-house RTOS. Active developer on the LwIP project and have contributed a number of feature improvements:1) Vectored I/O: Implemented sendmsg for sockets API and vectorized the TCP output infrastructure2) Implemented TCP Appropriate Byte Counting (RFC 3465) to improve transmit performance3) Re-worked the TCP persist timer to ensure TCP receive window is fully closed and zero window probing times out the connection4) Implemented parts of 'Advanced Sockets API for IPv6 (RFC 3542)': CMSG, ifnamextoindex, IP_PKTINFO, etc.5) Contributed a number of socket and TCP unit tests. Ported unit test framework to build on MacOS with Clang