All blogs / Engineering management / careers
Matt Spitz
software engineering musings
- Posts
- 47 from 6 May 2009 to 30 Sep 2026
- Posting
- monthly (6 in the last year)
- Kind
- personal blog
- Feed
- https://mttsptz.ai/feed.xml
2026 6
2025 1
2024 4
- Crescent City to San Francisco
- Retention and resilience
- So fresh and so clean (clean)
- SFPL Explorer Map I spent a lot of time at the West Portal library branch growing up, and when I went inside a few months ago for old time’s sake, the man behind the desk offered me a San Francisco Public Library Explorer Map. The map of San Francisco has a little gray circle for each of the city’s
2023 1
2022 2
- Cultivating effective product engineering Product engineering – developing software that meets a customer need – is a skill that is developed rather than taught. When deployed effectively, strong product engineers have extraordinary leverage, crossing crossfunctional boundaries and getting (a lot of
- Intro to retros I recently presented an introduction to retrospectives at Vanta as a tool for teams to use in a hypergrowth environment. The presentation was well-received, so I’ve converted it into a post in it’s interesting to others, too!
2021 1
2020 2
- Getting better feedback Many people I’ve met professionally are ambitious and crave feedback to accelerate their growth. Unfortunately, these people are often frustrated by expecting and not getting feedback from their manager.
- On remote teams This is an evolution of a prior post about remote work. Many are working remotely now, thanks to COVID-19. I’m assuming this will be more of A Thing™ going forward and decided to refresh my thoughts.
2019 3
- Lowering the stakes in career development conversations An important part of a manager’s job is to develop the capabilities of those in her reporting chain to deliver more impact to the business in the long run. This requires understanding the career aspirations of her teammates so she can stretch t
- Managing without domain expertise At the risk of stating the obvious, being an engineering manager (EM) and an individual contributor (IC) are different jobs. An IC is responsible for developing high-quality software that serves customers’ needs. An EM is responsible for ensuring that the company’s
- Productive escalation Developing complex software at scale almost always requires coordination across potentially many teams and functions. People are people, and every now and again, such coordination results in disagreement or conflict. For example, an engineer might disagree with the user experie
2017 2
- Ownership and quality There’s a natural tension between quickness and quality in early-stage product development. The faster you build a product, the sooner you can get feedback and iterate towards what users want. If you move too quickly at first, you risk the maintainability of the code and can en
- Hiring for culture fit A team’s culture is its most valuable asset, especially in a dynamic industry like tech. Values and traditions enable teammates to trust one another as they adapt to growth, looming competitors, and evolving strategies. Particularly for small teams, maintaining a high bar for
2016 3
- Modernizing mattspitz.me My team has been investigating the impact of potential performance improvements on the web, and since I only code off-the-clock these days, I wanted to try my hand with some newer technologies, too.
- Turn Down For What(ever)?! Since I put my silly Turn Down For What in the Google Play Store last year, it’s been downloaded 92,000 times. Today, over 11,000 people have it currently installed on their phone. Ridiculous. I spent two hours on it, and now it’s all the rage in Spain and South America. T
- Running from a job Sometimes, your job sucks, and it’s time to move on. Maybe you’re looking for something new and the company can’t provide it, or maybe something bad happened that’s the extra push you needed put in your notice. It happens. However, in finding something new, it’s important to diffe
2015 3
- Informing your opinion Sometimes, when I interview someone, they’ll mention a favorite piece of technology (a common one these days is Go). Once they’ve discussed its merits, I ask them what they don’t like about it. Not being able to come up with a downside indicates a lack of experience.
- Working remotely In the last five years, I’ve been a founding member of three New York engineering offices for companies based in the Bay Area (Meebo, eBay, and now Dropbox). Along the way, I’ve learned some of what makes a remote office successful, and often, what doesn’t. The ideas I’ll share in t
- Advice for new grads I’ve had a number of conversations with current students looking for their first job out of college, and I find myself sharing the same advice. These points are particularly applicable to new grads but are worth keeping in mind throughout one’s career. I’ve had these discussions
2014 6
- Moving fast In 2010, Mark Zuckerberg famously said that the key to success is to “move fast and break things.” From an external perspective, “moving fast” means shipping new features and products at a healthy cadence. Internally, an engineering organization moves fast when its engineers work on prob
- Keeping track of passwords I’ve recently changed the way in which I handle passwords. Some folks have asked me about it, so I figured I’d share.
- Rootkit design feedback When I was in high school, Kazaa was everyone’s primary source of pirated music and viruses. I made a reasonable amount of money fixing virus-infected Windows XP machines for friends-of-friends. I’ve been proud to say that I hadn’t (to my knowledge) been affected by a virus.
- Poor man's asset management One of the challenges of web development is figuring out how best to use the browser’s download cache. When you surf the ‘net, if anyone uses that term any more, webpages and images aren’t downloaded every time you access them. The browser saves that extra work, time, and
- Yearly vesting considered harmful Tech companies will often include some sort of equity in their compensation packages. It’s an excellent way to motivate employees, as they’re literally invested in the success of the company. How that equity is distributed, though, can have a massive impact on incen
- Goodbye, Tumblr! Hello, Jekyll! As of today, I’ve officially migrated this blog from Tumblr to Jekyll. Finally!
2013 6
- Worse is Better in the Play Store One of my favorite essays is The Rise of Worse is Better by Richard Gabriel, which describes the distinction between what he calls the “MIT approach” and the “New Jersey approach” with respect to software development. In short, the MIT approach is about solving a pr
- PhoneHome: Remote logging for Android Building Hoot showed Christina and I the ugly side of Android fragmentation. Hoot is currently running on over 1600 different device models on five different versions of the Android OS (>= 4.0), and it makes extensive use of the hardware: multiple cameras, the l
- Serving authenticated media with nginx In the last few months, I’ve been building Hoot, a private video messaging app for Android, with my business partner Christina. Part of a video messaging app is hosting and serving – you guessed it – videos. Hoot’s videos are served off the filesystem by nginx
- On hiring Hiring good engineers is really, really hard. These days, it’s a seller’s market, and a top candidate will almost certainly have a number of competing offers with all sorts of shiny perks. I’ve done some hiring in the past, and I’ve tricked some great companies into letting me work with th
- A month with Dell's Project Sputnik I ordered the new Project Sputnik laptop from Dell to replace my six-year-old MacBook. It’s basically the most-tricked-out version of the XPS 13, running Ubuntu 12.04 instead of Windows 8. I won’t get into why I dislike Apple’s OS, but I run Linux on my desktop an
- Contracts and expectations with data APIs The phrase “application programming interface” (API) is officially quite generic. It encompasses interactions between software components as tight as data structures (e.g. C++’s standard template library) and as loose as structured queries over the Internet
2012 3
- Pulse-width modulation, hysteresis, and transferring large files. Oh my! I came home from Thanksgiving with a bloated stomach and few enormous files that I planned to back up on my home computer. These files were on the order of ~100s of GB and left me only about 30GB free on my laptop hard drive. A
- Staying curious My grandfather is an impressive man for a number of reasons, but one thing that continually amazes me is how curious he is. He’s a voracious learner, reads everything, and figures things out on his own. In general, computers are more difficult for grandparents. They constitute a para
- I scream, you scream, we all scream for unit tests? I’m going to go out and say it. I love unit tests. Hopefully, by the end of this post, you will, too. I’m not going to cover the pros and cons of various frameworks in each language, the best way to mock out data dependencies, or even the secret to
2011 3
- On the value of recommendations Recommendations have been all the rage for the last couple of years now, and since I’ve been working for Hunch (now eBay), I’ve been thinking about why they’ve become necessary and the value good recommendations bring to the piles of content on the Internet.
- Hunch's switch to git Over the last few weeks at Hunch, we’ve switched our version control system from Subversion to git. I’m not an expert on git by any means, but, since I had more knowledge than most and an interest in making the switch, I ended up with the responsibility of getting us across the
- Hammers and nails: selecting a datastore For many years, particularly for web applications, the only real option was the ol’ RDBMS. Their primary query language, SQL, is possibly taught more than any other language. Recently, a number of alternatives to the traditional RDBMS, collectively termed NoS