Maarten Koopmans is a physicist and a software architect. We worked together (remotely) from 2006 to 2009 helping to build a genius online project management tool called Qtask (now, Prolific). Maarten is one of the smartest people I know (which says a lot given my amazing network of friends and colleagues).
I asked if I could interview him about his experiences with remote working. Lucky for me, he said yes, and on 5 February 2013, we met (in person!) at the library in Amsterdam.
It’s a long post, but I think you’ll find the richness of the content worth the read. And yes, you will find out how to eat an elephant!
A summary of highlights:
* Be everything from chief cook to bottle washer
* Bandwidth is like oxygen. It should always be in plenty supply
* Have a stringent selection procedure to hire the right people
* Contribute to your community
* Use Agile methodology
* Remote working can amplify either your capability or your problem
* Cultivate discipline
* Plan your next day the night before
* You win the war every day with little steps
* Social interaction is important
* Never stop innovating and learning
Be everything from chief cook to bottle washer
I work mainly in building the back-end of software. I deal a lot in security, connectivity-like solutions, and I know the mobile toolkit inside and out. I started out studying applied computer science in Rotterdam, and after a year, switched to physics because 1) I liked it, and 2) I thought it gave me a good general skill set. I graduated with a degree in computational physics and my first job was as a technical architect. I kept studying programming on my own and ended up learning around 12 different languages.
Now, I’ve done everything from technical architecture, to project programming, to implementation, to producing, to engineering. I like to describe myself as a “bottle washer” which means that I’m not about having a particular role or task. Instead, I’m about working towards a goal. If that means being a bottle washer, then that’s what I do. If it means managing the project, then that’s what I do. And if I need to be a senior developer, then I’m doing that.
Bandwidth is like oxygen. It should always be in plenty supply.
I began working remotely for research agencies starting in 2002. The team was basically equipped to work from anywhere with small (12″) lightweight laptops and phones with GPRS (which used to be the fast mobile internet). The Managing Director’s underlying principle (which I live by to this day) was “Bandwidth is like oxygen. It should always be in plenty supply.”
My cable company at home is a different provider than my mobile phone, which is a different provider than my mobile hotspot. There has to be national failure across three different providers for me not to have the bandwidth at all. I really take the bandwidth and oxygen metaphor quite seriously. It is one of the critical pillars for remote working.
Have a stringent selection procedure to hire the right people
One of my clients said to me once that there’s a lot of garbage out there…in terms of people. And surprisingly, it happens at every level. Whether it’s engineering or sales or on the customer side, there’s simply a lot of garbage. So naturally, managers have a lot of fear because it’s hard to find good teams. And having people even further away, where they can’t be monitored, seems worse.
But there are many situations, for example, where someone needs to stay home to wait for the plumber… from somewhere between 9am and 3pm. My employees were perfectly capable of writing software at home, and we had Skype for communicating with each other. So the benefit to them was that they didn’t have to take a day off for the plumber. And the benefit to me was that they didn’t go away for a day in the middle of a project with impending deadlines.
After working in research agencies, I became a project manager for the government and allowed people to work from home part of the week. These were typically programmers, so we could simply see if they were committing code or not. Doing this also created a form of social cohesion because in a sense, people were watching each other – not in a negative way, but rather, as a form of transparency.
What I’ve learned is to make sure to hire “A-players“. People have the assumption that everybody is doing the best they can, but a lot of people simply don’t develop the habits of productivity. I mean, we have to ask, why do people procrastinate? No one does it consciously. You have to develop a certain set of habits and they come with time.
We did two things to ensure we hired the best programmers:
- Find people who were eager to still develop their techniques, and who were sometimes capable of programming in exotic languages that were of no practical use other than that they showed a healthy level of curiosity and intellect. These people are typically self motivated, and also, inspiring to work with.
- Invest in relationships with the account managers providing employees. When the account managers knew specifically what we were looking for, they could recommend senior people, but they could also recommend very junior people. A junior person would work for less money, and the tradeoff was that we would mentor them to become really good. We ended up with kids of 25/26 years old who were extremely innovative and becoming senior very quickly. In software, age is not related to experience or capability.
One of the oldest programming languages is LISP. It was my hypothesis that people who knew LISP, or LISP techniques, tended to be the better programmers. So even though it wasn’t something we were ever going to use, I added LISP to the list of desired languages during the hiring process. Out of 50 people, there were always two or three who had LISP experience – for the sole reason that they had been curious enough to learn it. And these are the kinds of people we wanted on our project.
At some point, these people would tell other friends and colleagues, and we were able to use the peer network to find the best people. This was a type of social engineering, though it wasn’t a conscious strategy at the time.
Contribute to your community
Contributing to a community and showing that you’re motivated will give you an edge in a particular niche and allows your work to become visible and appreciated. This then becomes a public business card. It may cost you time and energy (it’s always a battle to find balance), but if you’re visible in a community, by default, I think it will give you work, and more importantly, the right kind of work.
Worst case, you’re spending time doing something that you care about it, and then the project dies. But really, look back at the work you were doing a decade ago. Is it still alive? And there are a lot of steps above the worst case scenario.
In the meantime, you are developing your own intellect and there is never anything bad about that. It’s about empowerment and taking responsibility for yourself. And it isn’t just about online working… people who are active in their local communities are also capable of building a business around that as long as they are doing something of value.
Use Agile methodology
For one of my clients, we work in two-week sprints and we have a 10-minute stand-up meeting three times per week. Everyone takes one minute to tell what they have done, what they are doing, and whether there’s a roadblock.
So if you combine the stand up with having a number of commits to the code base every day, you simply can’t fall behind. In a way, it’s a treadmill which can be very stressful. But if you have good planning on a bi-weekly basis, then the goal is achievable. And if you fall behind, you have to say something, and others will step in to help. It takes a bit of getting used to – but it gives head space as well.
Having a good online manager can make it easier to facilitate work by asking the right questions, and without making it fearsome, like you’re being watched. I don’t think that role is recognized. Facilitation from a good manager can motivate employees to give back. With a manager like this, I want to do my best.
I think the agile approach would be extremely useful outside of software development: from construction, to marketing, to sales, to consulting… you can apply it on a lot of different levels.
Remote working can amplify either your capability or your problem
There is an implicit social convention in an office which is not the most productive. What is productive for you is not productive for me, so the average becomes the least productive for all of us.
Remote working is important to me because it allows me to be in control of my own productivity. If you do things correctly when you’re working remotely, you have the freedom to do things in the most effective way for yourself. Remote working can amplify either your capability or your problem.
For the people where remote working amplifies their opportunities and their capabilities, the difference is so big that as a society, we are moving towards giving more freedom because if people do learn how to deal with this, it can be very powerful. My kids are way more empowered to do this stuff already.
You have to combine working remotely with the power of doing nothing. You have to know when you’re procrastinating and then consciously stop. Sometimes it means powering through, and sometimes it means taking a break. That’s where the experience comes in. You need the self knowledge and the ability to put triggers in place for yourself.
It’s important to take breaks. It’s important to get regular exercise. You also need to manage your interruptions. I’ve created the habit of turning off my mobile phone after 6pm. You have to do a lot of small counter-intuitive things to get the average productivity up. And most people don’t execute this.
A lot of it simply boils down to discipline: rest, eat good food, go out and walk. And a lot of it has nothing to do with remote working. Having the discipline to do all these things amplify your opportunities.
Plan your next day the night before
People ask what I do when I’m in procrastination mode. And I tell them that I’m not anymore. I scrum myself and work in 1 or 2 day sprints. At the end of every day, around dinner time, I determine what I’m going to do the next day. It allows me to use the evening to rehearse. If I have an idea during this time, I simply write it down so it’s out of my head. When I wake up the next morning, I know what needs to be done.
Sometimes I notice that things aren’t clicking the way they are supposed to and I allow myself to take a break. But the bottom line is that I need to finish my tasks before the end of the day. So the window I have for procrastination is extremely small.
I picked up on the idea a couple of years ago when I read about how a certain tennis player prepared himself. Every night before the game or training, he was rehearsing what he was going to do the next day. People who are consciously planning what they are going to do the next day, have a very simple way to get an edge on a day-to-day basis. If you do it 5 days in a row, you have a good week. If you do it 4 weeks in a row, you have a good month. And at some point, your employer starts noticing.
How to eat an elephant
There’s a Dutch saying “Hoe eet je an olifant? Hapje voor hapje” (How do you eat an elephant? One bite at a time). And that’s exactly how you do big projects. So how do you lose eating the elephant? You start eating too late. You can’t digest. It’s the same with your work. You win the war every day with little steps.
Social interaction is important
I like being around people, and at the same time, I like working alone where I am focused and in the zone. But you can’t work alone all the time. I’ve worked from home for long periods of time and I’ve come to the conclusion that it’s not healthy. Living like a hermit is not a natural situation. It’s important to be social.
Once you’re working for a customer remotely, I make a point of visiting them at least every quarter. The face to face contact is crucial if you want to build a long lasting relationship.
Never stop innovating and learning
A lot of the things I’ve learned are about how to work effectively. If every day you do your best, with reflection at the end of the day, by the end of the month you’re already ahead of the game. When people ask what I do, I tell them “I just do my job the best that I can.” – MaartenKoopmans.com