Listening a little longer with Lee
Principal Software Engineer
Years at Sonos:
13 (and a half)
What initially got you interested in technology/software?
L: I’ve been interested in programming since I was in elementary school. I started at home with Basic and Logo on an Apple II GS, which was a gift from my grandfather, when I was about 10 or 11. I learned C in high school and followed that interest into a CS degree from WPI. From there I worked in embedded software for Audio/Video transmission equipment before joining Sonos in 2007.
What attracted you to Sonos?
L: When I first interviewed, I had never heard about Sonos. I happened to respond to a recruiter who had a connection with our past head of software and got a chance to get the low-key screening interview and the full tour of the product (i.e. the sales pitch).
I’ll admit that, at the time I was intrigued, but not quite sold. It seemed like a cute, high-priced gadget that filled a small niche for those who wanted whole-home audio that also interfaced with a local digital library. They had just added the novel capability to interface with this new audio delivery system called ‘Rhapsody’ where you streamed music instead of downloading and storing it, and that did seem interesting, even if the implementation was still a little clunky.
What sealed the deal for me was the interview loop. It was immediately clear that there were a lot of really thoughtful, smart folks working here. In full transparency, I had shared with them that I had seen the “interview problem” before; so they all got to trot out their favorite extra obscure interview questions, which also really appealed to the puzzle solver in me.
What keeps you at Sonos?
L: When people ask me this question in interviews, I always have a three-part answer. The people, the product, and the personal growth opportunities.
I love that the people I work with every day are super smart, motivated, and humble. We mostly check our egos at the door. And as a software developer, that’s only possible when you have a very high degree of trust that every person you work with deserves to be here and also believes that you deserve to be here.
It also means that we don’t have a whole lot of our self-worth tied up in the code. I can trust that if someone comes along behind me and changes the code that I write, it’s because it doesn’t do what it needs to do, and not that they just wanted to feng shui the code to fit their ideals. Similarly if I come across code that needs to be modified or streamlined, I don’t throw up my hands and curse out the original author, I recognize that that code did what it needed to do at the time, and if I can leave the codebase a little better than I found it, I count that a win.
At the risk of sounding like an advertisement, we make products I can be proud of; the audio fidelity of each new product seems to surpass the previous. At least as important to me, however, is that our revenue comes entirely from consumer-facing products.
This means that our incentives are completely aligned with those of our customers. We win when folks are so happy with their Sonos experience that they expand their system by adding more rooms or more speakers to a room. We are 100% focused on creating delightful, engaging experiences that help more people listen to more music (and the like) more often.
I’ve been at companies where I looked around and struggled to find someone more senior to model myself on and learn from. That’s not true at Sonos. Here, there are lots of folks with more or different experiences that are happy to mentor and teach. Even now, as a principal engineer, there is still so much to learn and lots of people available to share their time, skills, and experience with me. And, with new folks joining all the time, lots of opportunities for me to pay it forward and help other budding engineers.
Most interesting technical challenge you’ve gotten to work on? And/or What have you accomplished at Sonos that you are particularly proud of?
L: It’s always hard to choose a single project after 13+ years, so here are three.
The first was taking our player-player audio synchronization which was fine for multi-room, but less optimal for stereo-pairing (which involves tighter sync for audio imaging) and reworking and then tuning it so that it was well-suited to add in stereo-pairing on our first generation of speakers. (And the joy of working at Sonos is that smarter folks than me came behind me and tightened it up still further until it’s sample-accurate now.)
Another product I worked on early was reworking the audio pipeline on the players to add in crossfade. This was notable, because we had CPU (Central Processing Unit) limitations and memory challenges to balance to see if e.g. we could afford to decode two streams simultaneously and/or buffer enough that we could make the transition or if there was a hybrid solution.
The last thing may sound simple, but I’ve been working to improve shuffle play. One thing that a teammate and I did (starting as a hack during hack week) was to show the shuffled queue order so that users can arrange it if it ends up with clumps. The other ideas are probably a topic for a full blog-post, so stay tuned.
What are you most excited about in the future of this field?
L: I’m excited to see us trying to figure out how to simplify complicated experiences. An example might be setting up a 5.1 system and tuning it to a sweet spot, or navigating a secure join process as easily as possible, or even figuring out how to use voice to take an utterance like “chick chick chick”, turn it into the indy dance band “!!!”, search for music from them, and start it playing. No matter the technology, we are taking convoluted processes and distilling them.
What are you listening to these days?
L: My music tastes are fairly eclectic… the last concert I went to was Primus, but right now James Taylor along with the Kings of Convenience have been going through my head and my Sonos. My father was a Jazz DJ at a local radio station, so I also always have a little Monk or a little Miles on somewhere.
At Sonos we have many creative passions beyond our day job: musicians, audiophiles, tinkerers, creators, chefs, artists,...what do you love to do when you are not working?
L: All of the above? I’m an amateur cook, a beginning baker and I also play the trumpet in a local activist brass band styled on the street music of New Orleans.
Over the past 6 months of the pandemic, I’ve probably worked my way through 100lbs of flour (no exaggeration) making sourdough bread, yeasted sandwich loaves, biscuits, and scones.
*Editor’s Note: Since Covid, Lee’s baking skills have been documented and we feel he has certainly progressed beyond his humble self-description of “beginner". We wish we could taste some of his creations!*