Tim Burks
Toolmaker
Developer/Creator at agent.io
Activity
Loading activity...
Career: 11
Developer/Creator
agent.io
Los Altos, California, US
Sep 2024 - Present
Developer/Creator
agent.io
Los Altos, California, US
I'm making a network proxy that turns the service mesh inside out. Instead of creating yet another Matrix, I'm building developers an Iron Man suit.
Software Engineer
Google
Sunnyvale, California, US
Jan 2016 - May 2024
Software Engineer
Sunnyvale, California, US
I interviewed with Google as an iOS developer, but when they decided to hire me, I asked "do you have anything in Cloud that I could do?" My recruiter replied, "sorry, we don't have any jobs for iOS developers in Cloud" but I asked "is it OK if I ask around for a while?" That led me to Jason Allor, Dan Li, and the API Services Platform Team, aka the "One Platform Team" that managed all of Google's APIs. There Louis Ryan introduced me to gRPC and Envoy and Dan Ciruli adopted me as a client-side helper to the Cloud Endpoints project. One of my first individual efforts in 2016 was to get involved with the OpenAPI initiative, which led to a tool called gnostic that parsed OpenAPI descriptions into a binary Protocol Buffer representation (later used by kubectl). Also in 2016 I began work on Swift support for gRPC that was later taken over by George Barnett at Apple. In 2017 I began leading a team that works to make it easier for developers at Google to publish APIs for both internal and external uses. One of our goals was to make it easier for everyone to build APIs, and for that we began publishing code generators and other tools for working with gRPC and other Google API technologies at https://github.com/googleapis. In late 2019, I joined Google's Apigee team to focus on products that help companies make and use APIs better. There I built https://github.com/apigee/registry, an open-source gRPC service and related tools for managing catalogs of APIs.
Organizer
Silicon Valley iPhone Developers' Meetup
Palo Alto, California, US
Mar 2008 - Dec 2017
Organizer
Silicon Valley iPhone Developers' Meetup
Palo Alto, California, US
In March 2008, on the day after the iPhone SDK was announced, I signed up with meetup.com and registered the Silicon Valley iOS Developers' Meetup. At the time I was an EDA developer who had become enamored with Objective-C, but when the iPhone SDK appeared I decided to drop my EDA plans and focus on this exciting new platform. For nearly ten years, we met monthly at locations around the Bay area, helping dozens of companies find developers, hundreds of developers find jobs, and thousands find free food and an inspiring evening. When what was once new became common, we moved forward and archived our event descriptions and photos at https://timburks.github.io/sviphone/
iOS Specialist
Realogy
Emeryville, California, US · Remote
Sep 2009 - Dec 2015
iOS Specialist
Realogy
Emeryville, California, US · Remote
In the summer of 2014, ZipRealty was acquired by Realogy, the parent company of over a quarter of a million agents working with many well known brokerage brands including Century 21, ERA, Coldwell Banker, and Sotheby's. I was involved with the ZipRealty Real Estate iOS apps when they were first created in 2009, and continued for many years as a part-time member of the mobile team assisting with architecture and new technology.
Owner and Principal
Radtastical, Inc
Palo Alto, California, US
Jan 2005 - Dec 2015
Owner and Principal
Radtastical, Inc
Palo Alto, California, US
I helped people create iPhone and iPad apps by working as a developer, by providing one-on-one problem solving and advice, and by organizing and managing teams of developers. I also organized the Silicon Valley iOS Developers' Meetup Group, a monthly networking and information-sharing event that I started in March 2008. http://meetup.com/sviphone One of my larger app projects was the ZipRealty app for iPhone and iPad. Beginning in the fall of 2009, I consulted with ZipRealty to help get their initial iPhone app into the App Store, then added the Home Scan AR feature, and then created the first version of ZipRealty for iPad in time for the iPad launch (which we achieved at the same time I was preparing MobileIron Sentry for the iPad launch). Later I brought John Ellenich into ZipRealty for an extensive new design for the iPad app and I have continued to work with ZipRealty to support new features and quality improvements. For more on ZipRealty for iPhone and iPad, see http://www.ziprealty.com/iphone and http://www.ziprealty.com/ipad. In the winter of 2011, I worked with filmmaker Marc Smolowitz to create an iPad app that promoted organ transplant awareness. Called "The Daily Gift", the app was an "advent calendar" for April 2011, National Donate Life Month, and featured video testimonials from people whose lives have been touched by organ transplant: recipients, donor families, living donors, and caregivers. The app also included clips and background information from "The Power of Two", a highly-acclaimed film about our friends Isabel and Ana Stenzel, twin sisters who received life-saving lung transplants as their lungs were failing from Cystic Fibrosis.
iOS Specialist
CloudCar
Mountain View, California, US · On-site
Sep 2014 - Sep 2015
iOS Specialist
CloudCar
Mountain View, California, US · On-site
CloudCar was a Los Altos and Mountain View-based startup building software and apps to make driving safer and more fun. In September 2014, I joined the CloudCar team as an advisor, problem solver, and software developer and spent just over a year helping them through major staff and technical transitions that included replacing a Javascript and HTML-based hybrid app with a fully-native iOS app. In this I was primarily responsible for media services but also helped with architecture, memory management, navigation, and system integration.
Producer
Renaissance: the iOS App Makers' Conference
San Francisco, California, US
May 2012 - Jan 2014
Producer
Renaissance: the iOS App Makers' Conference
San Francisco, California, US
Renaissance was a three-day conference for iOS app makers in San Francisco that featured a fast-paced track of sessions that focuses on success in the app business. Renaissance uniquely focused on developer interests because it was uniquely run by developers themselves. All of the conference organizers and moderators were career software developers with commitment both to apps and to community. I have organized the Silicon Valley iOS Developers' Meetup since 2008, and in 2010 and 2011, Renaissance cofounder Bill Dudney worked at Apple as an Application Frameworks Evangelist, where his duties included planning and coaching a large part of the sessions at Apple's annual Worldwide Developer Conference. Bill is now back at Apple, but throughout our careers, both of us have been involved in many individual projects and have consulted for companies ranging from two-person startups to multibillion-dollar multinationals. * Watch our Renaissance '14 "Ethics for App Makers" session with Santa Clara University professor Shannon Vallor http://youtu.be/-o0gX0W9Q1g
iOS Specialist
MobileIron
Sunnyvale, California, US
Dec 2008 - Oct 2012
iOS Specialist
MobileIron
Sunnyvale, California, US
As the first (and for over a year the only) iOS-related member of the MobileIron team, I helped MobileIron adapt its original plans for managing Windows Mobile-based phones to the iPhone. I wrote the first MobileIron native iPhone client app and helped build the configuration management system that grew from that. Later I worked with Tom Wagner and John Ellenich to build MobileIron Sentry, the first IT app for the iPad. Following this, I continued to work part-time with MobileIron to provide advance development of new features including document distribution, user-specific configuration distribution, and several to-be-released product features.
Vice President, Product Engineering
Magma Design Automation
San Jose, California, US
Oct 2002 - Jun 2004
Vice President, Product Engineering
Magma Design Automation
San Jose, California, US
In late 2002, I followed Kevin Steptoe as VP of Product Engineering at Magma. I believe I was the fourth person in the company to take this position, and I was the first software developer to fill it. As we grew, Magma struggled to keep a rapidly-expanding base of customers productively using software that had also been built quite rapidly. Magma's Product Engineering team was intended to work between Magma's field application engineers and developers, providing support for both by improving and focusing communication and testing. Because it had been staffed with Magma's application engineers, it originally had a strong problem-solving focus, and often acted more as a backup FAE organization than the support that I was hoping to work with as a developer. During my tenure, Magma's product engineering team became responsible for documentation, expanded its training efforts, and worked to improve the quality of bug reports that FAEs entered into the system.
Design Automation Software Developer
Magma Design Automation
San Jose, California, US
Dec 1997 - Sep 2002
Design Automation Software Developer
Magma Design Automation
San Jose, California, US
I was employee #14 at Magma, and I built the original static timing analyzer for Magma's constraint-driven design system. At the time I joined Magma, I was offered an identical position at competing Monterey Design Systems. I chose Magma because I was impressed by the hands-on work ethic and focus of everyone that I met on the Magma team. In my first few years at Magma, I was directly responsible for the static timing analysis component of Magma's fully-integrated RTL-to-GDSII digital design system. It was used by all parts of the system, and as Magma's early emphasis on logical effort-based design gradually transformed into more iterative approaches, our incremental static timer came under heavy pressure. Fortunately after a few years, Bob Swanson, Roger Embree, Alex Spencer, and Manjit Borah came to Magma and took over parts of the system. I continued to work as a hands-on developer and manager of the timing analysis team until September 2002.
Microprocessor Design Automation Developer
IBM, Somerset Design Center
Austin, Texas, US
Dec 1993 - Dec 1997
Microprocessor Design Automation Developer
IBM, Somerset Design Center
Austin, Texas, US
This was my first job after graduate school. Before I interviewed, I remember thinking "this group has accomplished so much already, what can I contribute?" But I quickly learned that the Somerset CAD group was facing two challenges where I could help: 1) correct (non-pessimistic) timing analysis of circuits with transparent latches, and 2) device-level electrical and timing analysis. I had worked on the first topic at Michigan, and I was naive enough to take on the second at Somerset (everyone who knew better had said "we can't do that"). This work turned into a complete rewrite of the Somerset Timing Evaluation Program (which we called STEP3), involved several other developers, and was extended to have device-level timing analysis capabilities. Unlike existing tools, STEP3's device-level timing analysis was based on fast circuit simulation, and for this we used Anirudh Devgan's ACES tool. The API that Anirudh created for me to use in STEP3 was later used by the Einstimer TLT (Transistor Level Timing) project. But the highlight of this time was working with many great software developers including John Davis, Shervin Hojat, Rob Mains, Bob Swanson, Joe Hutt, Derek Beatty, Stephen Lim, and Phil Barker.
Education: 2
University of Michigan
MS, PhD, Computer Science and Engineering
University of Michigan
MS, PhD, Computer Science and Engineering
Virginia Tech
BS, Computer Engineering
Virginia Tech
BS, Computer Engineering
Projects: 3
Open Radar
openradar.me
Nov 2008 - Present
Open Radar
openradar.me
Public bug reporting for developers who use Apple software tools.
IO, a network proxy that puts application developers first
agent.io
Sep 2024 - Dec 2026
IO, a network proxy that puts application developers first
agent.io
IO is a network proxy that turns the service mesh inside out. Instead of normalizing applications to squeeze them into a matrix, it works as an out-of-process SDK that makes application development easier and application deployments more secure. IO handles communication challenges that developers get tired of facing over and over again and rarely have time to get right. IO builds on Envoy, a high-performing and highly-configurable proxy used by tens of thousands of organizations and developers. But Envoy’s great power comes with great complexity. IO makes Envoy easy to use by running it behind a control surface that addresses three common needs: - Calling Mode provides a forward proxy that applications can use to securely call remote APIs. - Serving Mode provides a reverse proxy that observes and secures API calls to an application. - Ingress Mode provides a TLS gateway that can be used to serve multiple backends with HTTPS. Read more at https://agent.io
Sidecar: Baggage-free gRPC
github.com/agentio/sidecar
Sep 2025 - Dec 2025
Sidecar: Baggage-free gRPC
github.com/agentio/sidecar
Sidecar is a library for building gRPC clients and servers in Go. Sidecar arose from the realization that popular gRPC libraries like grpc-go and connect-go are loaded with capabilities that aren't needed by gRPC applications that use sidecar proxies. When applications use sidecars, the sidecars provide these capabilities along with assurance that they are implemented and configured correctly. Redundantly including them in networking support libraries adds needless complexity, bloat, and supply-chain risk. Some of the capabilities that Sidecar intentionally omits include compression, transcoding, name resolution, load balancing, interceptors, retry, health checking, and observability. If you need these capabilities built into your application, then another gRPC library is probably a better fit. But if you are building gRPC services that delegate advanced networking to sidecar proxies, Sidecar can help you make your services lean and maintainable.
Publications: 24
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO
Agent IO