Experienced Software Engineering Manager responsible for managing a team of developers to deliver high-quality performant software. Proficient in analyzing requirements, scoping and planning software delivery and monitoring delivery milestones. Strong communication skills with problem solving and conflict management abilities and a strong attention to detail. Has prior IC and and hands-on programming experience in the areas of computer networking, distributed systems and embedded systems.
I lead a 11 member engineering team that is responsible for the design and implementation of several software components of the core connectivity stack that runs on the Cruise Autonomous Vehicle (AV). The Cruise AV is equipped with multiple cellular radios, WiFi, Bluetooth and Ethernet interfaces that enable the AV to implement a variety of use cases as outlined below
Cellular:
While the AV is in L4 autonomous mode, a persistent and reliable network connection needs to be maintained between the AV and Cruise servers for use cases such as Remote Assistance (human intervention to maneuver the AV out of a stuck situation), telemetry data to communicate the health of the AV and localization of the AV using GNSS. It is also used to send emergency signals to the Cruise servers in case the AV is vandalized and to handle thermal runaway events on the AV. We enable this functionality using a combination of open source software like connman, ofono, iwd, strongswan etc and Cruise proprietary extensions for improved reliability.
WiFi:
While the AV is parked inside a Cruise facility, it uses WiFi for use cases such as offloading of autonomy stack logs to the cloud, download of maps and software updates, in-facility navigation to enable the AV to safely park in a designated spot after return from a ridehail service and to launch the autonomy stack before the AV goes out into the street for ridehail services. WiFi is also used as mobile hotspot to provide Internet access to customers during a ride.
Ethernet:
The AV uses Ethernet as a backup network interface when the WiFi connection is not available for some reason.
Bluetooth:
Bluetooth is used to allow a rider to play music from their mobile device on the AV’s in-cabin entertainment system.
As an engineering manager of the team, my responsibilities include
1. Setting up the technical roadmap for the team and ensuring they are in alignment with the overall business’s timeline and objectives
2. Detailed software task planning of what features the team would deliver per quarter. Forecasting and prioritizing when software components would be delivered and working with stakeholders like Test, Product Management and Operations to ensure everybody is aligned on the plan
3. Hiring, inspiring and developing the team to perform their best and produce high quality performant software
4. Developing metrics and observability tools to monitor and provide insights on the performance of the software both during in-house Beta testing as well as during L4 autonomous rides. For example, I introduced the notion of a software crash management system in which the AV would offload the core dumps of its crashing processes over WiFi when it returned to the garage. These core dumps would then be indexed by a tool like Sentry to help the team understand the running top 10 crashes that should be fixed.
I led a 7 member team that was responsible for several software components of the Amazon Echo device software stack. I initially worked as an IC for 5 years on these components before transitioning to management and continuing to lead the team for another 4 years. My team worked on enabling the following features on the Echo.
Classic Bluetooth: Enable the Echo to discover, pair, connect and stream audio to/from BT enabled phones and speakers
WiFi: Enable the Echo to discover and connect to the customer’s home WiFi network and provide a seamless first time setup experience. Since network connection instability was the top complaint of Echo customers, my team developed several monitoring and diagnostics tools and enabled the Echo to more intelligently manage its WiFi connection and give appropriate troubleshooting steps to the customer to enable them to independently correct the problem without calling Amazon customer service.
SmartHome: Enable the Echo to discover and control a wide variety of smart home devices like lights, sensors and lots over different networking technologies like Zigbee, LoRa, WiFi, BLE and more recently Matter
Device Analytics: As a side project, I (with 2 other junior engineers) developed a tool called Tango that periodically collects anonymized device logs from Beta customers, indexes them into a NoSQL database like ElasticSearch and allows developers and testers to continuously monitor the performance of Echo devices. This tool gained in popularity and was soon extended to other Amazon devices like FireTV and Echo Auto. My team then expanded the scope of the tool to also include device metrics which provided valuable insight on how customers use the device. For example, the first 2 generations of Echo had a movable ring to control device volume. The metrics data revealed that a very small fraction of customers use this ring to change volume, but rather opt to use a voice command instead. This prompted the Hardware team to replace the ring with less expensive push buttons, thereby reducing the BOM cost of future generation devices
Worked on several software features of the networking stack that runs on Cisco's portfolio of routers, switches and wireless access points. These include
802.11v
(https://standards.ieee.org/ieee/802.11v/3695/)
Contributed to the IEEE 802.11v specification for features related to client device power savings. Designed and implemented features such as Directed Multicast Service (DMS), TIM Broadcast, Proxy ARP, BSS Max Idle, Traffic Filtering Service (TFS) and BSS Transition Management.
Application Visibility and Control (AVC)
(https://www.cisco.com/c/en/us/td/docs/ios/solutions_docs/avc/guide/avc-user-guide/avc_tech_overview.html)
Key member of the team that designed and implemented the core metric definition, parsing, aggregation and transmission logic for the overall AVC solution.
Media Frame Protection
Developed a QoS packet marking scheme that improves the quality of real-time interactive video streaming over a network when the bottleneck link is oversubscribed by upto 20%