Technical Management

I have managed engineering teams for more than 20 years in both large and small companies. Teams have been as small as 5 engineers to as large as 70 engineers spanning multiple countries and timezones and covering many different technologies and products. This experience has shaped my own identity as a technical manager.
Jump to Experience

Management Style

Like many managers, I am the product of my mentors who shared their wisdom and experience and who I admired and respected over the course of my career. I have learned much from leaders I have worked for and worked with over the years. These are some examples that describe elements of my leadership style.

Communication

Leaders have to get commun­ication right. As a leader, I speak and write clearly and effectively. I document workflows, tools, and designs so that they can be reviewed and shared with others. I prefer collaborative tools like Confluence, Jira, Trello, Excalidraw, Slack, and Teams. I have used videos to demonstrate and share complex ideas. I do not host a lot of meetings, and when I do, I try to ensure the content is important to everyone in the meeting. I prefer meetings as a tool for design, collaboration, strategy, and broadcasting information as opposed to meetings for collecting status. I pass down direction through leaders in the organization, and I like to get feedback directly. I believe strongly in weekly 1:1 meetings as a space to communicate directly about topics ranging from project status, priorities, strategy, career, and performance. I am an effective public speaker and have presented at technical conferences and also served on a team as a coach to other presenters.

Force Multipliers

Good leaders prioritize force multipliers as a means to drive team efficiency. This is a primary impetus for effective software managers to be engaged in tools, automation, continuos integration, and continuous deployment. Force multipliers can take many forms. Better equipment is an example. Automation is another. If you can find a way to save 10 minutes in a workflow that an engineer uses 10 times a day, then you are effectively adding recurring resources to your team without incurring additional cost beyond the NRE to improve the workflow. Sometimes writing something down saves the time of somebody else having to repeat the steps to accomplish something. Even team building has a role. For example, having one local QA engineer to supplement an offshore QA team can reduce painful turn-around times when investigating issues. Using a nearshore team in place of an offshore team can have a similar benefit. When managing an organization, I look continuously for opportunities to save time and maximize resources.

Collaboration

Coll­aboration is a style and a way of working. It can sit on a spectrum with competitiveness. If there are two similar ideas, a collaboration will seek to combine the ideas to produce a better result, whereas a competition will partition ownership and seek to place one idea firmly above the other. There is a role for both in business. Collaboration should not be confused with compromise. Compromise is a tool that is available when collaborating, but it is often not needed to create an optimal solution. My style is openly collaborative. I tend to explain problems and solicit solutions rather than dictate edicts. Techniques including peer reviews, information sharing, retros, and being open to continuous improvement exemplify a collaborative environment. A collaborative team recognizes contributions, shares in successes, and learns and moves on from mistakes rather than focusing on blame and reward. This makes working environments both more productive and enjoyable.

Servant Leadership

Servant leadership places the role of a leader in support of the team. In engineering, this is a particularly important attribute, because teams are often structured such that the most knowledgeable and productive members of a team are not the manager, but are the dedicated individual contributors and subject matter experts who are doing the hands-on work every day. This means that the most effective thing a manager can do is to allow the team to do their jobs with the most efficient workflows, best tools, and the least amount of interruptions. A good manager will act as a shield to the team, absorbing distractions that suck energy and time from the team. Effective servant leadership requires trust and mutual respect, because a manager has to allow team members to do their jobs effectively.

Agile

In my management approach, I like to apply Agile methods, aspiring to achieve the 12 Principles Behind the Agile Manifesto as described by the Agile Alliance. I like using Scrum as a framework for Agile, but being Agile does not mean we have to rigidly execute Scrum workflows. Scrum is a tool. There is no mention of sprints, stories, velocity, nor ceremonies in the manifesto or its principles. Instead, Agile is about empowering teams. Agile means that we should work incrementally, that we should react to events in our business and environment, that we should continuously reevaluate our progress and reprioritize our goals in the context of the changes in the business environment. Actions speak louder than words, and working code is the best measure of progress. To effectively do these things, we must communicate well. Our engineering teams must be engaged with our business teams, not just at the senior level, but at the team level. And everyone must share information so that we can make sound business-oriented decisions together. Some people think that Agile philosophies are at odds with timely execution, but that is not the case. If your business priority is to execute to a schedule, then Agile just gives you a framework to work in to make that happen. "How does one eat an elephant?" the adage goes, "One bite at a time," replies the Agile sage.

Transparency

A leader's decisions are only as good as the data that they are based on, and there is no more important quality than transparency and honesty. Managers are particularly susceptible to providing feedback that might hide underlying problems in the team or its execution in order to delay or avoid judgement. But this kind of unreliability puts an upstream manager in the impossible position of not being able to react nor provide support until it is too late. In my blog, I talk about the importance of being data driven and of measuring results. Open collaborative environments require transparency to be effective. My propensity for writing things down, using quantitative data, and sharing information speaks to the value I place on it. I have a history of eschewing the gatekeeper mentality, meaning those people who regard closely held knowledge as job security. If there is some method of doing something, a tool, or process that nobody else knows, then simply write it down, show others how to do it, automate it, and move on to a more creatively challenging problem. I let job security be the continuous value that one brings to an organization rather than a finite piece of past knowledge. I value openness, honesty, and transparency as core values of effective leadership.

Management Experience

My management experience is characterized as much by its diversity as by its length of service. I have had the opportunity to manage teams and organizations in large corporations, in small startups, in smaller companies that are transitioning into larger organizations. I have managed in different corporate cultures, in different economic and business environments, and under different leadership styles. Anecdotally, the people management experiences alone have helped me grow as a part-time therapist, mentor, life-coach, as well as an adversary or enemy to some. But the whole of my experience brings a perspective that helps me to adapt to new environments, understand the strengths and weaknesses of organizations, adjust my style and approach to meet the needs of an organization, build healthy cultures, and to provide valuable insight for growing companies that are transitioning from one type of environment to another.

Product companies

Product companies bring technology to consumers

Turtle Beach

Turtle Beach is a consumer electronics company focused on gaming accessories. They are a market leader in console gaming headsets and earned $366M in revenue in 2021. The engineering teams are small and the product cycles are short and aggressive. There are software teams that develop embedded firmware for headsets as well as for mobile, PC, and Mac support apps.

I joined Turtle Beach in 2020 as Senior Director of Software. I undertook several initiatives to help level-up the software teams and modernize workflows. These included engaging with a near-shore team in Guadalajara to augment the mobile apps software development in the U.S., introducing Agile workflows to software engineering, and working with product management to create some of the first product backlogs for prioritizing features.

I introduced behavioral and diagnostic analytics in our mobile applications and demonstrated basic analytics analysis, developing and documenting queries in Kusto using Azure's Application Insights. I drove improvements in the mobile app that helped boost the ratings of the iOS and Android apps from a low 2-star rating to 4.7 and 4.5 stars respectively.

I promoted the concepts of test automation and build and deployment automation in the engineering teams where neither had been in use prior. I prototyped the first python-controlled relays in the context of a test automation system to control the firmware running on the products, and developed a YAML-based continuous deployment pipeline using GitHub Actions prior to hiring and onboarding a lead for devops and a software test manager.

I introduced Atlassian Confluence for documentation while contributing hundreds of pages of documentation for designs, processes, diagnostics, interfaces, pipelines, tools, recruiting, and onboarding.

In addition to the management responsibilities and the work described above, I developed a significant amount of wireless connectivity firmware and tools as an individual contributor, some of which is described in the Software Development section.

GoPro

I joined GoPro as a Sr. Engineering Manager in 2017 shortly after GoPro's IPO. My charter was the development of the iOS and Android Capture mobile apps in addition to Android, iOS, embedded wireless SDKs. This charter also included a small embedded Linux team focused on the camera-side connectivity interface. My organization totaled 30 developers, all located in San Diego.

GoPro Plus, a cloud-based subscription service for GoPro users, was an an important strategic project at GoPro during this time. For the mobile apps, this included support for GoPro's new cloud-based media storage, internationalized mobile UI, REST interfaces, authentication, push notifications, in-app payments, behavioral and diagnostic analytics, media management, as well as WiFi and BLE connectivity to GoPro cameras. The mobile apps are a key strategic part of GoPro's mobile-first cloud offering.

During my time at GoPro, I scaled the mobile development by decoupling mobile front-end teams from mobile wireless SDKs. The bifurcation enabled the connectivity SDKs to serve multiple apps, for example to support GoPro's drone development and third-party developer programs at the time.

The GoPro apps served millions of monthly active users, and my teams worked collaboratively with product owners, UX designers, visual designers, program managers, system architects, and QA engineering using Agile workflows to deliver world-class mobile applications.

Taking cues from my leadership, I strived for a culture of hard work and life-balance with a heavy emphasis on technology, innovation, and continuous learning helping make GoPro a satisfying place to work.

Semis

Semiconductor companies are foundational innovators

Broadcom

As Director of Engineering at Broadcom, I was responsible for the organization that developed the mobile, PC, and embedded software, protocol stacks, tools, and development kits for Broadcom's Bluetooth, NFC, and 802.15.4 portfolio of standalone and combo connectivity silicon. There were as many as seventy engineers in my organization, located on the U.S. West Coast, East Coast, Europe, India, and Taiwan.

I joined Broadcom in 2008, a year after the introduction of the iPhone, and just prior to the introduction of the first Android phones. This was an important time as a transition to the new mobile computing paradigm was creating an insatiable demand for Wifi + Bluetooth combo silicon in which Broadcom had a dominant position.

I assembled a team to work on Android AOSP software, leveraging a core group of software engineers who were experts in connectivity but were not familiar with Java, Git, Gerrit, nor the new scales of software development that came with AOSP development. I contracted consultants to train the existing engineers in the new technologies while hiring to augment the team with experts in these new areas. I worked to develop the infrastructure to build and optimize the large-scale code base that allowed to the teams to work effectively, often collaborating with other engineering directors in Broadcom to share and learn organizational best practices.

My team gained software traction by helping the largest Android OEMs at the time, including Samsung, LGE, HTC, Sony, and others to provide higher performance connectivity than the base AOSP was delivering at the time. This complemented Broadcom's combo connectivity business strategy that was growing into a multi-billion dollar business.

Within Broadcom, I advocated for an open source strategy for our core protocol stacks. I worked collaboratively with our business development and product marketing teams to develop and document an open source strategy that would benefit Broadcom. I presented the strategy at an annual Broadcom Technical Conference attended by hundreds of Broadcom's most senior technical staff, CEO and CTO.

The success that we had with top Android OEMs caught Google's attention, and this led to discussions about contributing Broadcom's core Bluetooth and NFC protocol stack software to the AOSP. This led to a multi-year collaboration with Google to integrate and deploy open source versions of the Bluetooth and NFC protocol stacks. During this time I was engaged with Google technical leaders, our OEM customers around the world, Broadcom's business development and legal teams, and my own engineers to make the contribution a success for Android users and all parties.

Cypress / Infineon

As Director of Engineering at Cypress Semiconductor, my charter included Bluetooth software and firmware for IoT, embedded, audio, and HID applications. My team was approximately 50 engineers and managers located on the U.S. West Coast, East Coast, India, and Taiwan.

Cypress had recently acquired Broadcom Wifi and Bluetooth IP as well as the engineering team for IoT development. IoT was broadly interpreted to included most applications with the exception of mobile phones and tablets, but because many of the developers, management, and IP had come from Broadcom, much of the work was familiar.

While at Cypress, my teams helped develop and launch several high volume consumer HID and wearable products for OEM customers, launched smart cameras and other IoT devices in collaboration with our Wifi colleagues, developed Cypress's first TWS earbuds, and supported existing businesses in set-top box and automotive connectivity.

Bluetooth Low Energy (BLE) is a key technology for IoT, and new development focused on BLE-optimized silicon as well as BLE mesh for smart home and commercial automation applications.

While at Cypress, our Bluetooth team worked together with other Cypress engineering teams in the U.S., Ukraine, and India to integrate Bluetooth connectivity technology into Cypress's Modus Toolkit ecosystem.

Infineon acquired the Cypress IoT business in 2020 and Cypress continues to run as a subsidiary of Infineon.

Start-ups

Managing in start-up environments often means doing more with less

WIDCOMM

WIDCOMM was a technology startup founded in 1998 to create Bluetooth solutions for PCs, mobile phones, automobiles, and consumer devices. The WIDCOMM Bluetooth protocol stack was the Bluetooth SIG's first qualified product.

As Director of Software Engineering, I built and managed a team of engineers focused on WIDCOMM's Bluetooth protocol stack implementation, its profiles, and its application in embedded connectivity. We developed SDKs, hardware reference designs, and software tools in addition to the software itself.

I worked collaboratively with our team to develop and document software workflows, tools, and processes that were appropriate for a startup technology company.

Bluetooth was an emerging technology in the early 2000s, and it was starting to get traction in mobile phones. Working closely with our product managers, we designed an API and SDK tailored for mobile phone integration, which helped provide an advantage against generic solutions when competing for mobile sockets.

I was a technology advocate for Bluetooth while at WIDCOMM, and I presented on topics related to Bluetooth technology at the 3G Mobile Systems Conference in Tokyo, as well as presenting for San Diego's local technical community.

WIDCOMM was acquired by Broadcom in 2004.

Staccato Communications

Staccato Communications was a technology startup founded in 2002 to develop the world's first single-chip CMOS ultra-wideband SoC. Its products included single-chip integrated circuits, device adapters, reference design kits, and software development kits.

As the Director of Software Engineering, I built and managed the software team responsible for embedded MAC firmware, framework, tools, drivers, embedded and Windows SDKs as well as applications of UWB ultra-wideband technology including Wireless USB and Bluetooth AMP. I also initiated offshore development to mitigate costs of non-core development.

At Staccato, the firmware was developed from the ground up in embedded C using a form of template method pattern and related strategies to incorporate diagnostics into the core design. The philosophy of design for test allowed the technical IP to be built on top of a lightweight diagnostics framework as opposed to "bolting on" diagnostics after the implementation was complete.

I worked with our software developers to codify software process and workflows that were appropriate for a technology startup, creating a disciplined development environment that did not stifle the team's creativity or ability to work quickly.

UWB was an emerging technology and I worked closely with our marketing, sales, and international customers providing sales material and training collateral. My team and I provided on-site technical support to promote Staccato's ultra-wideband technology to key customers.