Head of Remote | AngelList
Andreas leads the remote strategy for @AngelList , AngelList has over 1 Million candidates looking for remote roles and several thousand companies looking for global talent.
This is the number one answer they want to talk today about. Its managing at autonomy and how we do this at project plant. We don’t mean and become a team player or never work with other people. Hi my name is Andreas first up all the slides are online. So if you want to skipper hat or read a little bit faster than I talk feel free to go to do too. Who here knows product and just a quick show of hands. Wow ok shit that’s a lot of people so for those who don’t know us imagine ready than the App Store have an ugly baby.
So it’s basically a community where you can launch a new product. So to think about whatever you’re currently trying to build and you want to show this to the world. This is one of those places where you want to launch where you can find early adopters.
Where you find press where you find investors all these kind of things. I was the founding team member CTO. There moved because of this company. I moved to San Francisco the full the team is actually distributed. We’re pretty much everywhere the headquarters in San Francisco. But as far as I know currently nobody’s actually working from San Francisco. It’s just still the San Francisco company. I guess most people know us because of the news feed.
So all the products of today but the more you go. Actually into the product the more you go into the community. The more you actually discover different aspects of the product. It’s a surprisingly big application by now. Because I guess if you have enough funding. If you don’t make enough money you just continue building stuff. I don’t know but there’s a lot of stuff to actually explore there’s a lot of stuff happening there 2017.
We sold to a company called AngelList which is basically the LinkedIn for startups. It’s a place where you can find investors where we can find co-founders or where you can find talent. I’m the Head of Remote there and if you have no idea what the head of remote is me neither it’s a completely made-up title the idea behind it is that. I basically lead all products and devar’s are somehow related to remote teams remote work and additionally. I have an inefficient role which nobody gave me and nobody pays me for it. To make sure Angeles goes more and more remote for those who don’t know Angeles and why this could be interesting to you. Folks here is it’s basically the biggest job board out there in my opinion for remote work.
We have 7,000 companies remote companies hiring right now. Thousand of those are fully distributed and they are hiring right now to have job postings still-life currently. We have 1 million and more candidates who say that they’re looking for remote work.
So if you’re looking for a person who used to work at Google. Now lives in Central Europe has experience with Ruby on Rails and has been looking for a job in the last two weeks. There’s a search engine for that and additionally have a platform. If a team that helps people to hire the top of the pyramid. So for example you need a VP of engineering or you need to this very few very experienced people.
That’s a list another thing is AngelList has a huge angle that’s about investing it’s one of the largest vehicles for investing in Silicon Valley I’m running a small syndicate which is a little bit non-public but. I’m happy to share this here. It’s basically a group of people who are experienced with remote work who actively invest in early remote teams.
So let’s get started quick disclaimer everything I’m going to say is my opinion and feel free to disagree. I hope you actually disagree everything that works for me might not work for you. I have experience with small to medium sized teams. I’ve never worked for Google. I will never work for Google and I have no idea how to scale to several thousand people many people here do. I don’t talk to them and a lot of things. I’m going to mention. Although it’s called engineering management. It’s applicable to any kind of team and it’s also applicable to non remote teams.
So there is no special magic sauce here happening. The goal of this talk. I want to talk a little bit about how managing remote teams is different and I want to talk a little bit about product hands approach to autonomy. Because I think it’s a very good one. I want to talk about ownership and decision making basically how to enable your team and get your people to actually pick and basically take ownership cool. So why we wrote work and I’m preaching a little bit to the choir here you guys are.
I think you notice better than me but remote work from my point of view at least is the logical evolution of digital work against. All concerns the internet is not going to go away. It’s very unly that you’re not going to work online in the future. It’s very unly that we’re not going to work with people in other countries in the future. It’s very unly that. We won’t have international teams and just use the technology.
We have remote work is here to stay another thing is that in my opinion everybody’s already working remote. So you might check your emails on your way to work. You might work Fridays from a coffee place you might travel to a conference and work from there. But to some aspect you already working remote the only question now is how much of your time.
You’re actually working remote my personal motivation is a little bit different. I got the opportunity to work with amazing international talent people who if they would live in San Francisco work. If that would easily work with off for the top end companies and would be directors of engineering there. I had a chance to work with those people in my team because of remote work.
I also had the opportunity to have an international career. It’s kind of one of my ambitions to make sure that a lot of international talent. Actually has this opportunity to work for jobs that actually deserves their talent how is remote work. Actually different from my point of view remote teams have roughly 5x the process teams.
If you five people in an office what you do to get a meeting is you literally shout around the corner and everybody rushes in and you have a meeting and you do whatever everybody’s excited and you cheer your high five and then you whatever you do. That’s how you work in a co-located team in a remote team.
If you’re five people you need to do crazy things you might need to announce that you’re going to have a meeting and plan that you might need to leave notes. Pete had to live in a different time. So I don’t you had to get these kids to school or something that you actually have to plan this kind of stuff. You have to install processes to manage all these basics. That at this scale usually you wouldn’t have in a co-located team co-located teams.
Usually get around a lot of really bad processes by monkey patching which just means fixing on-the-fly fixing their bad processes we’ve worn more meetings. If something doesn’t work if people didn’t get it another meeting.
If you have whatever problem you do another meeting in remote teams. This is something which we can’t easily do because meetings are expensive to remote teams are exhausting to remote teams. Everybody who has been in a hangout call that’s more than an hour knows. How these feels this is draining energy at the engine another thing is remote is really good for iteration for focus. You can optimize your whole day and all this kind of stuff one of the disadvantages about remote work. You’re losing a lot of neurons remote is better for iteration meeting in person is a little bit better for innovation. I mean if innovation is not being in order innovative. I mean having a huge pivot discussion having the quarterly planning having all this little nuance stuff.
Where it’s just easier to get a message across if you actually meet in person. So what’s really hard about remote teams is it a process is it cultural differences. Is all of this kind of stuff in my opinion no all of this kind of stuff is in a way sis symptoms or solutions.
The real problem that’s really hard in remote teams is trust the number one thing. That the remote team actually needs to figure out is how to think about trust how to manage trust because. Let’s be honest unless you install some. I don’t know tracking software spycams. I don’t hope heck.
They’re computers or you are some sort of evil mastermind and to figure something else out. In this case I shouldn’t work for you and I think nobody wants to work for you but unless you manage to completely micromanage them for monitoring which you shouldn’t do.
You don’t really know what they’re doing. This is not a random example when destiny 2 came out. I was really worried about. Some parts of my team when epics came out. Let this please be a flop you know. This is a real concern as a manager in a remote team because you have to trust them in a way right another thing. Is it’s really hard to get across motivation.
Just in general emotions through video calls maybe. That’s just because I’m Germanic and emotions in general a little bit what the fuck for me. But it’s really hard to know somebody’s. Actually motivated or if they’re just really good in faking half an hour once a day to show you how motivated they are.
I know a lot of people are really good in that getting people excited you know foreigner hang out call. I remember we have internal funding announcement. We were hey awesome yeah and then everybody cheered for 10 seconds. We thought we forgetting turning mute off.
You know so everybody was yeah that was awkward next time. We’re hey what is that everybody gets a bottle of champagne and we open it together. It works it’s still very awkward and you kind of have to trust that people. Really excited because you can’t just shout into a camera. All the time it’s weird another thing. I’m germanic I live in California.
If you have ever met Californians. They’re a little bit different no offense. Californians will be do whatever you think is right. We fully trust you. I’m sure I do that no that doesn’t work cultural differences you know. Also apparently I give a very direct feedback.
I have a way to just express what I think which is apparently borderline artistic in California. So cultural differences are real thing. Most important one first especially engineering teams is taking ownership. It’s really hard to figure out how to get people to get take ownership and at that point okay.
Now the taking ownership and doing all the wrong choices a common problem. That’s again trust and how to establish decision-making especially for engineering teams. Everybody who had in worked with engineers including me. At some point they go down a rabbit hole. They start refactoring something you lose half a day before. You know this one day before. You know this all of a sudden you have now. You have to finish it because it is going to be only just two days. All of a sudden the week is gone another thing is when the team grows. I think a few people experience this year.
As well all of a sudden you have more people joining the meetings and you have this one project. Where actually two people or three people work on. But for some reason 10 people are involved and can’t really figure out what happened. That’s just how things are done now.
So all of this stuff in the nutshell if you route it back to the root cause is trust and how to actually think about trust. When I say trust a common feedback is either you trust somebody or you don’t and you just have to blindly trust your team all of that stuff is wrong. It’s simply not wrong this is this simply wrong is that not how we worked. It’s not how we can work Trust isn’t a binary thing you trust different people differently about different things and in different points of time.
You change your opinion about that. You might trust it more or less about these kind of specific things the other thing is there’s a comment saying. That Trust is earned which is kind of true but when you quickly scale your company you can’t really wait for everybody to earn. That trust before you actually let them do that task you can’t hire an amazing head of product and be you do whatever you think is right. But make sure it’s exactly what I would do.
So you need to systemize trust you need to think about all this kind of stuff. I mean is you need to create and establish processes how you manage trust and how you verify that that trust how you give trust how you receive trust. All these kind of things it’s about actually understanding each other getting to know each other and the differences in culture.
I want to talk a little bit how we do that and how you should do that. How I recommend doing that before I get into this the most important aspect here is just to meet people. This is not the topic of the talk a lot of people will talk about this here. This is not the one thing.
I want to focus on but actually meeting new people is in my opinion always a game-changer right somebody joins a team the first time. They actually meet the rest of the folks. That’s a big game changer.
I remember this is the first time we met in San Francisco. At that point we were working together for several months. I was literally night and day were talking to those people in slack and working with those people.
I remember when I first met for example Eric I didn’t know if I should shake hands hug fist bump high-five kiss. I really didn’t know what kind of relationship we had at this moment but I know afterwards this changed. I understood him better and he understood me better. All these little quirks that you know these things about people all of a sudden make sense. This is the number one game change. It’s absolutely worth the time this is the number 1s.
But I want to talk today about its managing at autonomy and how we do this at products. We have a concept which we call internally single player mode or optimizing for single player experience. The whole idea here is that people.
If you hire well by default are capable they’re fast they’re motivated they want to get stuff done. They don’t you and they worked hard to get this job and they actually now want to get things done. Unless they’re blocked and when they get blocked they lose time.
Imagine you playing a computer game imagine you playing. Mario you super motivated first level you press jump and now. It’s please wait for Frank and Frank will be online in three hours. Frank will get back to you and will let you know. What you should do next they’re.
We’ll let you know if this is okay what you just did and whatever. I’m pretty sure Nintendo wouldn’t be where. They are if this would be the game I single-player mode is about establishing clear goals. So that people roughly know. Where to go establishing a process or an attitude of finding paths to get there automate as much feedback. As possible as much instant feedback as possible and enable people to level up. On their own time pace. We don’t mean isolating. We don’t mean don’t become a team player or never work with other people blah blah blah.
This is not what you’re trying to say what we’re trying to say is creating autonomy because autonomy is not abandoning people if the idea is to enable people that they can choose the router that they can drive on their own speed and in their own way.
So step one establishing what we call find a path attitude you don’t have design yet you use the standard components which. Also requires investment as a team you need to actually build these standard components. Because it should ideally you get to the point that you have a rough mock-up by.
Somebody and they and everybody the team already knows how they should look. You don’t need to wait for dishonor. You’re just move ahead product aspects unclear you know how roughly how we make decisions by now make these decisions get feedback.
later the most important here one is my opinion is actually technical implementation you get to the point where you have to build something as an engineer and you know right now you don’t have the time to actually do this. You wanna as early as possible shape something at least to a better audience or something that and you have to basically figure out a way to do this.
So now you can discuss how should we do this or you fake it my favorite example is the recommendation engines of product. So it’s a website where you launch a new product and if you this product you might these ten other products as well and this is almost the core essence what we do.
So early on I was hey we need a recommendation engine here. I have to build one. I don’t have time to figure out how to do this with machine learning back then though this kind of stuff. So I will be smart about this. I will just use a graph database where I do a few complex queries which I have to automate all the data into blah blah blah.
All this kind of stuff I had a prototype in one day. So I was actually anengineer was really proud the output of it was okay. I was one more week of tuning and this would be from okay to good the problem is we didn’t really have the time or capacity of this.
Also was fundamentally against how we work as a company. Because we always try to ship and push as early as possible. So what the co-founder instead recommended Rhino instead recommended is to simply add app form in the backend where you can add post. Its what we did is we actually manually typed this in I felt super guilty about. This we had all of a sudden people in a team who had to do this every day.
There’s 80 new products and now you have to go into the search database and figure out which other products could be a good fit and add them you know I’ve had super guilty about this but on the other hand it worked. I as the European engineer getting there really this is what we do now.
Okay yeah but the good thing it worked and we were able to ship really fast we found a path. We could just avoid all these obstacles and ship quickly the product and recommendation engine is two days still largely billed at around this because what we’ve realized later on is that this curation aspect is actually huge value.
So what we did at some point is we actually opened up the city community well. At the communities adjust products. So that our team just needs to white list and confirm. We let other community members actually to the white listing process. So we actually managed to scale this with you and labor really big.
So anyway step two investing in tooling and automatically Pegasus developer specific and ice might be similar stuff for other verticals. But especially in engineering there’s a lot of best practices that you can fully automate linters. Other checking tools that basically ensure that people work according to whatever you define. As best practice you can have automatic testing and all this kind of stuff. So at some point a developer knows if they are finished if no more tools are instantly telling. If they’re heard that she’s doing something wrong. At this point the code is at least good enough to be deployed. It’s finished another thing is what we use religiously is feature flags.
It’s very that if you build a product in our place that you will ship. It almost the next day but you will only ship it to yourself publicly and then you will only ship it to all the administrators. Then you will only ship it to the better group and then you will ship it to everybody or whatever. The other aspect here is whenever something breaks there’s an easy way to view go to go to just revert everything fixes holy shit what just happened.
Let’s get this back and fix it all of this stuff can be done. As a single player none of this stuff should ever cause you problems. You should be able to ship confidently and if stuff really explodes. There’s tooling and everything in place to help you in this point.
So processes is number three here the weave process is what. We focus on is processes that actually avoid back-and-forth. A good example is pull request reviews is essentially. I just wrote code please give me feedback.
The main idea here is what we are trying to do is every morning everybody does this thing. Everybody every morning you get coffee before you do any other work before you check emails you feedback other people’s work. Because you will unblock them my goal here actually.
When I review your stuff is not to tell you where you’re wrong or critique or how I would do it I will actually just tell you how you can do stuff in a way that you can ship it faster if I have an idea everything else would anyway be already automated. I don’t expect you when I give you feedback to tell me what they. I now change this is good enough can. I know shape it this is not a council of adults of the old vice people telling you what to do. We give some feedback you either change the code or you tell them in a comment while you’re wrong you ship we don’t care.
I don’t care. I won’t really prove I don’t we’ll look again at it. You just move ahead and you ship because I might not be online when you have done. This change another good aspect is in the beginning. We had a lot of trouble with tack adapt a lot of old code guarding. It getting into the way anybody who has ever changed front-end frameworks and this kind of stuff knows there’s just a lot of stuff you didn’t get to actually clean up afterwards.
So what we introduced is every Friday. Unless your project is on fire you can work on whatever you think is useful. The idea here was you’ve clean ups whatever you think is currently useful we have no pre-approved list for this. You as an engineer you’re asked to figure out what you think is effective what is he useful.
The good thing about it got us to the place that we don’t have to do big refactoring projects as normal planned projects anymore. So what we do is unless there is product value in normal planning. There is no refactoring happening because. We have varieties for that and that’s fine. So if you have anything that pisses you off use the next four varieties and it will be gone an important thing about processes in remote teams is don’t plan for having a process that works. If you when you’re 10 -20 people and will work with you 50 people. If you’re growing every six months you will change how you do process in a company.
So what I just recommend is pick stuff that works for you right now wait for new problems to pop up and then fix those problems. If new process are you adapting your processes step number four I think it’s what most people here do anyway is keeping everything in the public. Every documentation every meeting needs to be shared because people won’t ask.
If I join a team and I be the new guy I won’t ask for all these kind of stuff because I’m a barest to ask this kind of stuff so ideally this stuff is already there and I can read it the same is true with all the automation in feedback the main reason why we have the automation in feedback is that you can learn on your own pace. This is also the other thing why I highly recommend this. It’s not so much only the efficiency. It’s not the people are more efficient effective and more fast and whatever. The other thing is just on boarding rather who took over the engineering team after. I after we transitioned in Angeles and I took over.
I got a rose he introduced an on boarding plan where we expect people to demo a new pro a new feature in their first week. So basically hello welcome to the team here’s a bunch of accounts. Here’s a bunch of stuff. You have never seen. Here’s a code base you have no idea about next Monday. Your demo have fun next Monday presenting to the whole team.
Hey, this is what I built. Hi you know a lot of companies. You don’t even get to the point that you have anything running in the first week. You know how we see this is. If you’re not able to do this with the team did something wrong.
If you manage to break anything we did something wrong you shouldn’t be in a point. You shouldn’t be in a place where you can actually fuck anything up. Here also it enables people to level up on their own pace. We had people who joined as juniors for example for iOS and managed to join the web team really quickly later on rado told me. He will never be a web developer and now he’s leading a co-ed product hunt. We’re okay Raul. He constantly sent us back reports. We got him as an intern really quickly afterwards. He was leading one a project which became one of the biggest moneymakers.
We have right now it enables people to develop on their own time and enables people to take ownership and for good ownership being able to actually take ownership decision making is a huge point. My opinion is a manager is not the person who decides for our people. Manager is not a full-time communication hub you’re not your job is not to communicate with other people communicated. This is not what a manager does. As a manager you manage processes.
When you lead people you create processes and you facilitate with communication. If this processes failure introduce new process together with the team or you help people actually grow and become the people they are mentoring them coaching them figuring out the career paths and all this kind of stuff how do you take make how do you enable people to actually do a good decision making and these are if the next few slides. I’m going to skip a little bit but you can read this all of this online. But the most important aspect is to make people understand how you actually make decision how you as a company actually come to conclusions how you make decisions it’s not a thing where there’s a right way to make a decision as a company fundamentally.
Every company has different value every company decides differently value stuff differently as at product hunt. We ship stuff that’s borderline broken at other companies you polish and you make sure everything works. Because you’re dealing with billions of dollars of whatever right very fundamentally different values and you need to make.
It explicit of what is your answer to how you make decisions I would love to just give everything to the team and be you guys figure it out. I’m in Bali vacation have fun unfortunate that’s not how HUD really works you need to think about decision making in layers.
There are layers that you are in charge of I highly recommend using opioids as a sidenote delegating trusts in every meeting. It needs to be clear. There’s a project who will actually lead the decisions and ideally to go back.
It should be this group of people sometimes. It’s a few other people above who need to help or whatever right who can override decisions. The important aspect here is sorry here is if you don’t make decisions you only add opinions period. It needs to be clear upfront who makes a decision in the team ideally.
The project team and of course it is complex in real-world scenarios. There isn’t a clear hierarchy there is a designer who owns design who wants to do something new. That should this person be able to make something new. It should be the project lead should it be one of the engineers who has to implement it.
Really hates it should it be this other guy who built. The old version should be this a co-founder. She really thinks whatever here a part of the decisions versus opinions. Here’s three tips. I would quickly want to share with you at the end of this talk. That worked for me number one is whenever you’re stuck as a team making a decision instead of arguing.
If you should do it or not reframe. It as a risk discussion risk is usually a resource and the interesting thing what happens. Here is that it usually changes the discussion all of a sudden as a team you agree on days weeks. People all this kind of stuff and you come to an agreement what should be the outcome of that number two. When you stuck sometimes you need to ship this is something.
That we do aggressively at product and very often when we get to the point that a product. It should be shipped. It should be life already but we’re not there yet and dealing with perfectionist. I am you know. It should be but it’s not there yet what. We do is we just ship it to 1% of the audience and the 1% is a placeholder that can be 100 people. That can be whatever is a small amount of audience in your product. That you feel comfortable because when you do this.
It changes the discussion. It’s no longer what do we need to do to calm not completely embarrass ourselves and what do we need to do. Make sure that these people can actually still do roughly what they need to do number three is that one thing.
I struggle with a lot is I tend to give feedback to everything as a Germanic person. Here’s my feedback especially as a manager as a co-founder. Your opinions matters a lot and if you a new product manager in a team and there’s a CEO adding.
Their opinion hey I just found this one link about our competitor. Who is released whatever didn’t. We discuss to also do something. That what happened there right all of a sudden everybody’s hey. We should really do that what damage introduced which I really is the concept of flash tags or fYI tags.
The main idea is you have a wiki page where you have basically hashtags fYI suggestion recommendation and plea which explicitly tells you what am. I expecting you to do now so to wrap this up here one important aspect with all of that managing people. Managing processes especially when you scale is something really frustrating in a lot of moments. You get frustrated because people don’t do what you think.
They should do or stuff doesn’t work out. All this kind of stuff be aware if you actually frustrated with them or with the situation and if it’s a situation fix it because ultimately everything in the company that goes wrong is your fault.
I know this is a good slide to end the talk. I know it’s a really who upbeat but everything in a company is ultimately your fault use a manager you establish. The process you create the environment you create the culture you hire the people you didn’t fire the people every problem that happens is in some way or another your fault.
So because ultimately what it comes down to is when you manage trust in an team. You delegate a decision-making a delegate trust when do all this kind of thing. It’s not so much about the team because the team wants to take more ownership. The team wants to have more responsibility. They want to do that right they’re cool. That usually what’s usually happening is the problem is with yourself because you’re sitting there and you’re not sure is this person currently coding or not are they playing computer games and you’re getting nervous you the person holy shit our money runs out nobody takes this shit serious.
I’m the only one freaking out well. I am the only one freaking out that’s you that’s not that’s not their problem. It’s fucking you right so when you wonder if people are coding or not the real question is why does it actually matter to you? Why didn’t you do your job before hand to figure out process that you can actually fully trust your team where did you didn’t figure out processes or didn’t you establish communication understanding.
So that you know about stuff early on and so on and so on that you can just. I don’t really care if they play computer games right now, because they I know that they’re actually fully productive right now. Thank you! I have more reading here if you want to read this and I’m happy to answer any questions.