Alex Karp's Readme
What is the purpose of this document?
I believe strongly in the importance of transparency, communication, and openness when it comes to creating strong teams. And in my opinion, that culture comes from the top, and is set by example. So here's my attempt at creating a README!
This readme is an honest attempt at a guide. I hope that it'll frame your expectations of me, and give you an idea of my expectations for you. I also hope that, over time, I'll grow and evolve as a manager. I'll do my best to keep this README up to date as things change.
But if you have any questions about this, feel free to ask me!
My role
Most basically put: my role is to serve my teams.
I lead the engineering efforts for the Home Care Plan team at Thumbtack. It is my job to make sure that every platform on my teams has as many people as it needs, to make sure that those people are growing in their roles, and to help bring in information from the rest of the Experience org and the company in general.
It's my role to guide, advise, and coach the people in my reporting structure. It is also my role to listen, encourage, and inspire.
In order to build the best and happiest teams, I'll try to learn as much as I can about your strengths and opportunity areas, as well as your areas of interest. With how quickly things grow and change here at Thumbtack, there are always new opportunities, so I try to keep everyone in my reporting structure in mind.
What do I value most?
- Honesty and Humility: We've all got things that we're good at, and things that we don't know. There can be multiple right ways to do something. We all make mistakes — in fact, sometimes I feel like if we never make mistakes, maybe we're playing it too safe. Regardless, when it comes to mistakes, I'm much more impressed by people who own up to them and take steps not to make the same mistakes twice, than people who try to hide them.
- Critical thinking, with a bias to action: There's always room for improvement. Whether its in the codebase, or our processes, or something else entirely, you're going to come across something you wish you could change. I encourage you to bring them to my attention. In these situations, however, try to bring me solutions and ideas, not only problems. But by all means, do bring me problems.
- Communication: In an environment where we work with so many different teams and stakeholders, it's important to be proactive in your communication. Let people know the status of the things you're working on. If something goes wrong, raise it immediately. If your teammates and stakeholders don't know what you're working on, then something is very wrong. To sum it up, it's always better to over-communicate rather than under-communicate.
- Feedback: I'm learning and growing just like everyone else and feedback is key to that process. As such, I highly value feedback from the people around me. What do I do well? What should I work on? Did something I say or do bother you? Is there something that I'm not doing that you think I should be doing? Please don't hesitate to share feedback with me. No matter what the feedback, I'll always be glad that you shared it. The best way to change something is to say something, right?
My expectations
- Scheduling time with me: If you see a free block on my calendar, feel free to book some time. I'll try my best to keep my calendar up to date. If you can't find any time, or if it's something urgent, don't hesitate to reach out to me on Slack. I'm usually able to make some time. Same goes for any meeting outside of 9am – 5pm ET. I can usually make it work, but I appreciate being asked.
- Work hours: Everyone works a slightly different hours at Thumbtack, especially because of time zones. My rule of thumb is that as long as you're reachable within reason and your work is getting done, I'm not too concerned with what hours you're working.
- Availability: You may receive emails or Slack messages early in the morning or late at night. Please do not feel obligated to answer them until you start working. I'll often send things out when I think of them, so that I don't forget. But I don't expect an immediate response. When possible, I try to take advantage of scheduled sending to make sure it doesn't come in outside of working hours.
- Done: For me, the definition of "done" isn't just when you're done with the development. "Done" includes QA, code review, and everything else that's involved with getting your work released. But beyond that, I believe that "done" includes putting out code and features that you're proud of. So for me, it's important for people to make sure they've tested their code out for themselves before they hand it off to QA, review their own code before they ask for a code review, etc.
1:1s
I'm big on 1-on-1s. I believe that they open up the lines of communication between two people not only during the actual meetings, but in general. As such, I spend a majority of my week in 1-on-1s.
For me, 1-on-1s are your time to talk about whatever it is that's on your mind. What would you like to talk about? What's going well? What's bugging you? These don't need to be about work updates unless you really want to talk about work. If there are things that I want to ask you, I'll do it, but this is your time. If I have feedback, I will also provide it during this time.
By default, I schedule 1-on-1s with my direct reports weekly for an hour. But I leave it up to you as to how long or how often you'd like to meet. Regardless of the cadence, please don't hesitate to reach out to me if something is on your mind. Even if I'm busy, I can usually find some time.
Off and on I use a system called Lighthouse to manage my 1-on-1s. It is set it up for all of my direct reports, so you should receive an invite. Lighthouse is great because it helps us to keep track of what we talk about during these meetings, and tracks any action items that come out of them. Once you accept the invite, you should start receiving reminders before our 1-on-1 to set an agenda. I highly recommend doing this!
How I work
- I sometimes feel weird sitting at my desk. As such, when I'm not in meetings, I can often be found sitting in a quiet space around the office. I'm not trying to avoid anyone when I do this, so feel free to reach out to me if you pass by and see me. If you're looking for me, send me a message on Slack and I'll tell you where I am.
- I'm always thinking about new things to try for our teams. I'll probably bring up these ideas during our 1-on-1s and ask for your feedback. Please be as honest as possible! It's up to all of us to make sure that our teams are not only very productive, but that our work environment is enjoyable.
- I make decisions by consensus. This means that, particularly when it comes to big decisions that will affect the team, I'll try to build as much consensus as possible. In all honesty, I probably rely on consensus a bit too much, and am trying to find the right balance between building consensus and making rapid decisions.
- I value ideas over titles. I believe that everyone can learn from everyone, no matter what their level or title is. Everyone has great ideas, and everyone asks valuable questions. Computer science, and even iOS/Android/Web development, is so broad that no one can be good at everything. So don't be afraid to speak up and always keep an open mind.
#AutismAcceptance — My autism and you
As an autistic individual, the way that I think or act can sometimes be different than what you might normally expect. Every autistic person's experiences are unique — here are a few examples of how my autism manifests:
- Communication. My communication style is normally very direct, and my word choice can sometimes be confusing to non-autistic folks and/or not resonate well. It is never my intention to be cruel, hurtful, or insensitive. If something sounds off to you, please lead with curiosity and ask about it. On the other hand, I might be overly diplomatic and selective with my words at times. This is often unconscious and is a self-preservation mechanism that has been drilled into me as a result of being autistic in a neurotypcial society.
- Eye contact. Eye contact can be difficult for me, particularly when it comes to video chatting. Particularly if I'm trying to think about what you've said or what I'm going to say, I might not be looking at you. Just know that it's not a sign of disinterest or disrespect — it's my subconscious way of reducing stimuli to focus.
- Auditory processing. I sometimes experience a delay when processing what someone is saying to me. In these cases, you might see me pause, or even mouth the words you just said. This is me processing what you've said so that I can respond. In some cases, I might ask you to repeat yourself if I just can't process what you've said.
- Stimming. Self-stimulatory behavior, known informally as stimming, is very common in autistic individuals. Stimming often involves repetitive movements or sounds and looks different for each autistic person. It's our way of helping our bodies regulate our emotions and energy — some stims can be calming, some can help us focus, etc. So if I look a little jittery, or mute myself, or even turn off my video, it's nothing to be concerned about.
- Executive dysfunction. I often struggle with getting things done. Whether they're big or little, some things can feel like insurmountable hurdles. This is particularly true for things that have to happen "at some point". More recently, this is why when I have a small task to do for someone, I'll try to either do it right then and there, or let them know when I'll do it. I apologize in advance for anything that I might forget or not be able to force myself to do. In these situations, please feel free to remind me — it really does help. Just know that it's not intentional.
- Autistic shutdown and burnout. If you're unfamiliar with spoon theory, here is a primer written by its creator, Christine Miserandino. The idea is that a lot of things that people normally take for granted can cost me a lot more in terms of mental, emotional, or even physical effort — spoons. Video chatting, interviews, sensory overload, or sometimes even small changes in my schedule can use up a lot of spoons. Trying to prevent myself from stimming to "appear normal" also takes up a ton of spoons, but it's something I'm trying to stop doing. Autistic shutdown is what happens to me when I run out of spoons — I'll become quieter, much more withdrawn, less focused, more anxious, and more jittery. Autistic burnout is when this happens for a prolonged period of time and usually leads to severe anxiety, loss of spoons, and even sometimes mutism (I usually talk about "running out of words"). So if I'm a bit quiet during a meeting, or if I need to cancel a meeting at the last minute, it's nothing to worry about, it's just probably because of this.
If you're looking to learn more about autism or how to be an ally, checking out the #ActuallyAutistic hashtag on Mastodon, Bluesky, Instagram, or whatever is left of Twitter/X is a great place to start! Also, feel free to ask me any questions you might have, I'm happy to talk about it.
Where to focus on your first 90 days?
- Reach out. If you do nothing else in your first 90 days, meet as many people as possible. Meet the people on your direct team. Meet the people on your partner teams. Meet the rest of people in Media Infrastructure and meet as many people as you can throughout the Product Foundation and Consumer orgs. I believe there is a direct correlation between the number of people with whom you have open lines of communication and the amount of impact you're able to have.
- Get to know the codebase. Take time to explore the code you'll be working with, regardless of whether you'll be writing code day-to-day. Since you're either new to the company or to the team, you have a fresh pair of eyes. Make notes of what looks good and what could be improved. We might not be able to make those changes immediately, but it's important to work toward a codebase that we're all proud of.
- Ask questions. Thumbtack has been around since 2009. Like any other software company after a few years, we've had to make our fair share of interesting decisions. This has affected not only our codebase, but how we structure our teams and how those teams operate. Please feel free to ask as many questions as you have! It can be confusing, and things change quickly.
How to know if you're ramping up on schedule: Honestly, the best way is to just ask! I'll usually bring it up in our 1-on-1s. But if I don't, feel free to ask me. I'm always happy to give feedback and help identify opportunity areas as you ramp up.