Davis W. Frank

I am an experienced senior software engineering leader with a demonstrated history of helping software teams shorten feedback loops, ship software, and stay happy. I can manage developers, designers, product managers, and people managers. I can build and re-staff teams. I can own critical business systems and start open source projects. I can present to meetups, conferences, customers, and executives about Ruby, JavaScript, YAML, Web Applications, early history of PC game development, low-level processor optimization, Pair Programming, and Test-driven Development.

Management Skills

Facilitation
I can lead a discussion to break down a problem, iterate on solutions, and drive shared understanding. I have used these skills in group mentoring sessions, sales meetings, regular retrospectives, and project kickoffs.
Communication
I am a storyteller. I can give presentations to an audience of 300, a meetup of a couple of dozen, or even just one-on-one. Writing a blog post or a presentation is one of my favorite ways to solidify my understanding of a topic. It’s even better when I can get a laugh.
People Management
After nearly twenty years of managing people - individuals and managers - I have found that the most important skill is providing empathetic feedback. I have built feedback systems and coached people to improve their feedback-giving and -receiving skills.
Mentoring
I can coach others by sharing my personal and professional experience as they navigate challenges. I have helped college students pitch themselves for summer internships, mentored managers to become directors, and co-rewrote job descriptions with Vice Presidents.
Team Building
I have established, inherited, and improved teams. I have moved code ownership from one team to another without missing a release.
Leading Distributed Teams
It’s great when a team is co-located. But as responsibilities scale, I have added, grown, and managed remote teams while keeping them working well together.
Stakeholder Management
I have built trust with internal customers and clients across industries. I have helped them manage budgets from five to seven figures. I have set their expectations and managed teams to meet and exceed them.
Vendor Management
I have renegotiated contracts, spun down vendors, and reduced cost spending across in order to optimize the ROI of using MSPs for key software team enablement.

Technology Skills

Test-driven Development
I write tests first so that design, implementation, refactoring, and bug fixing are faster and less expensive. I enjoy encouraging teams to do the same because it makes teams, business owners, and customers happy.
Pair Programming
I can code with another developer. It is fun, fast, and encourages information sharing. I also like coaching others to be better pairs. That helps teams get more productive and reduces product risk across the board.
Ruby
I picked up Ruby after a few years away from coding. Ruby is just so much fun to write and maintain. I’ve worked on several small Ruby projects and a few dozen Ruby on Rails applications, from version 1.2 up to Rails 6.
JavaScript
I was part of the movement to treat JavaScript as a first class language and apart from web browsers. This led to co-authoring and co-managing the open source project Jasmine, so that we could test drive our JS, consulting on applications for Palm’s webOS, and working on several single-page web apps. Jasmine then became one of the most popular TDD/BDD frameworks for JavaScript. I still like the idea of passing functions as parameters and can asynchronicity most of the time with keep up.
Web Application & SaaS Development
As a consultant, tech lead, and manager, I have developed dozens of applications, APIs, and other services for the web. Most used Ruby on Rails, and thus JavaScript, HTML and CSS are very familiar. I have also managed web-dev teams using Java/Spring, Kotlin/Spring, and Node.js.
Cloud Infrastructure
I have deployed web applications to PaaS solutions from Engine Yard, Cloud Foundry, and Heroku. I have worked with Cloud Provider products and APIs from Amazon Web Services, Google Cloud Platform, and Microsoft Azure. I have also worked with Kubernetes and BOSH.
Continuous Delivery & Iterative Development
I have coached and managed teams on how to build sustainable momentum using techniques from the Continuous Delivery toolbox. I have introduced Weekly Iteration Planning, Continuous Integration, and Retrospectives, among other patterns.
Continuous Integration & Release Engineering
I have set up CI systems for web and mobile projects using cloud services like TravisCI and CircleCI, and deployed self-managed systems of Jenkins and Concourse. I have used CI to implement Release Engineering tasks like packaging, product configuration, and scenario testing. CI is a team’s best automated friend.
Bottleneck Analysis & Remediation
I love making code and teams run more smoothly. This can mean instrumenting an application to figure out why code is slow. It can mean working with teams to help find more effective solutions.
Data Engineering
I have helped a team take a mess of scheduled queries and work them into a scalable, tested, set of data pipelines. This turned an interrupt-driven team into a more predictable, product-outcome-driven one.
Mobile Development Constraints
I have run teams building for PalmOS, webOS, Android, and iOS. I have taught teams how to adjust their expectations for higher latency networks, limited data bandwidth, and different user interaction expectations.
Legacy Technology Skills
I spent my early career working with digital desktop video and graphics on Microsoft Windows. I wrote low-level assembly routines, C/C++ application and driver code, spelunked in graphics sub-systems, and helped make Windows a viable video and game platform.

Professional Experience Timeline

Fountain October 2021 - June 2023

Director of Software Engineering

I drove efforts to improve Continuous Delivery chops, rebuild the engineer hiring process, optimize cloud services spending, rethink our approach to data engineering, and mature engineering practices.

Learned how, and how not, to grow the engineering discipline of a team to match the Series C funding; Learned how to manage teams through two layoff cycles.

Personal Sabbatical & Product Advising January 2020 - October 2021

I recharged while writing about my career experience, getting involved with the Pivotal Alumni network, optimizing our home meal planning, and improving our household operations to accommodate working and schooling from home. I helped a few companies in my network. I have aided architecture, design, and development for Curious Duck and advised about web content application development for Bigger Bolder Baking.

Pivotal March 2015 - January 2020

Senior Software Engineering Manager, PKS October 2018 - January 2020

PKS (now known as TKGI) was a jointly-developed Kubernetes distribution from Pivotal & VMware that was a service for Pivotal Cloud Foundry (now known as Tanzu Application Service). Pivotal was acquired by VMware in late 2019.

I was the Engineering Lead on the PKS Release Engineering team. I defined, prioritized, and accepted the work for this team of 10 developers from Pivotal and VMware. We optimized CI/CD, doubling the number of concurrent releases from 2 to 4 while reducing the cycle-time-per-change by 75% - from 4 days to 1.

As a member of the leadership team reporting to our VP of Engineering, we restaffed a team from Ireland to the US, dealt with regular joint-venture management issues, and managed our team through an acquisition. I continued to run the summer intern roundtable, incorporating the Palo Alto interns from the PKS and Greenplum teams.

Learned how to navigate conflicting management styles to a common goal, how to manage an entire team transition across 8 time zones, how to DRY up hundreds of YAML files with shared components.

Senior Software Engineering Manager - Cloud Foundry April 2018 - October 2018

Pivotal was the primary sponsor of the Cloud Foundry project, a multi-cloud Platform-as-a-Service (PaaS) for deployment of web apps and services. Pivotal sold its own version of CF, now known as Tanzu Application Service.

I was an engineer on the Open Source CF Cloud API team and managed 4 engineers on other teams. I facilitated working sessions to improve managers’ skills across the San Francisco office. I rebuilt the summer intern experience, starting a weekly “intern roundtable,” where Pivotal leaders from around the company came for an AMA-style chat with our developer, product manager, and designer interns.

Learned how to mentor a staff of new engineering managers, how to build a better intern experience, and how to refresh my Ruby on Rails skills.

Director of Software Engineering, Internal Application Development March 2015 - March 2018

I created this team out of a need to improve the development & maintenance of our business-critical, internal software projects. I grew this team from zero to 15 developers, product managers, and designers across two sites - San Francisco and Toronto. I drove budgeting and prioritization exercises with executive staff for our work. I also coached other IT teams regarding Pivotal’s agile practices.

Learned how to make a business case for a team, staff that team, how to manage across multiple sites, how internal back office customers are not quite like end consumers, and how to present to exec staff.

Pivotal Labs April 2008 - March 2015

Associate Director February 2013 - March 2015

I managed a staff of 40 developers and 5 managers, about one-third of the San Francisco consulting practice. I scoped projects, wrote proposals, and managed the business relationship for clients. I scheduled “beach” time for 8 Pivotal Labs open source projects across multiple offices. I continued to present at conferences, meetups, and clients about Pivotal, Extreme Programming, and testing JavaScript. Pivotal Labs is now known as VMware Tanzu Labs.

Sofware Engineering Manager February 2010 - February 2013

I was a member of the first manager cohort when Pivotal grew to need managers. I managed ten individual developers. I continued to lead consulting projects for clients. I also presented at conferences, meetups, and clients about Pivotal, Extreme Programming, and testing JavaScript.

Software Engineer April 2008 - February 2010

I was a engineer on dozens of consulting projects, all Ruby on Rails or JavaScript web-mobile applications. I co-created Jasmine, a BDD framework for JavaScript testing, to enable our teams to work more efficiently with front-end development.

Learned how to be a software consultant, how to practice agile software development every day, how to start an open source project, and how to build feedback-oriented management skills across an organization.

Real Girls Media February 2007 - April 2008

Senior Software Engineer

I led the development team for Divine Caroline, a web-only women’s interest magazine. This was custom CMS built in Rails. As a startup, they intended to sell the platform for online magazines. The writing and editing staff was our real-world, yet internal customers.

Learned that every startup is different, that sometimes indirect management of people is more impactful than direct, and that surrounding yourself with people in diverse roles makes for a much more fulfilling day.

Personal Sabbatical June 2006 - February 2007

Taught myself Ruby, Ruby on Rails, and SQL in order to keep sharp. Also learned that I liked both object oriented programming and web development.

Handspring & Palm November 2001 - June 2006

Software Engineering Manager, Customization and In-box

I designed and managed implementation of software that updated the OS and applied carrier customization for every Treo phone at the end of the manufacturing line. This reduced the elapsed time to manufacture a phone from hours to minutes. Also managed the team that built the in-box CD for every Palm product.

Engineering Program Manager, Messaging & Photos Applications

I led prioritization and implementation for the Messaging and Photos applications for Treo 600 and Treo 650. I managed remote partners for app libraries.

Software Engineering Manager, Software Tools

I managed the team of 5 developers that produced daily builds of the internal SDKs for application developers. I inherited, re-prioritized work for, and shipped a new internal bug database, based on Bugzilla.

Learned how to start managing software engineers, how to inherit a team and improve its throughput, how to think about user outcomes first before jumping to solutions, and how to manage through layoffs and acquisitions. Also had my first exposure to web development and Extreme Programming, separately.

Intel February 1999 - November 2001

Senior Software Engineer

I was the architect for high performance image processing, signal processing, and JPEG compression libraries. I managed the remote development team in Sarov, Russia, who were were employed as part of the Clinton/Yeltsin Nuclear Cities Initiative).

Learned how to release software via the web, how to manage a remote team in another timezone, and how to appreciate Russian caviar.

Netstudio May 1997 - December 1998

Software Engineer

I was one of the first engineers hired, developing an object oriented web graphics editor for Microsoft Windows. I developed image filters and style-related application code.

Learned about startup craziness, the benefits of a good software development process, and how to present at a sales conference.

Brøderbund December 1995 - May 1997

Software Engineer, Systems

I maintained an animation codec, including combining two separate codebases in order to halve the time it took to fix a bug. I added this codec to games like Where in the World is Carmen Sandiego?. I wrote MMX assembly routines for games, including Riven: The Sequel to Myst.

Learned how to code for a real-world consumer application deadline, how to simplify legacy code, how to work with Customer Support regarding high-cost bugs, and how to use personal contacts to establish a new business relationship. I never learned where in the world Carmen Sandiego was.

Intel July 1992 - December 1995

Software Engineer

I was a developer on the DCI project, which proved that direct-to-frame-buffer and accelerated graphics were viable on Windows. This tech shipped with Windows 95. It led to three patents and became the inspiration for DirectX 1.0 and the XBox.

Learned how to write production code in the real world, how to build an SDK to teach developers to use your API, and how to travel internationally on 4 hours notice.

Education

University of Georgia

B.S., Computer Science, July 1992

Harrison Metal

General Management class and electives, since fall 2017

Projects & Activities


f.v2024.04.28