“great read on the evolution of @teamwork – should be required reading for every SaaS founder & funder“ — @Davidivorsmith “seriously, that is outstanding. Startups, listen to this guy, not that guy.” — @chris_byrne
“A remarkable post from @irlTopper on how Teamwork.com grew from $0-$12mm in revenue without salespeople” –@RandFish
Today, we’re sharing the speech that Peter Coppinger, our CEO, co-founder, and lead developer, made on Tuesday at MicroConf 2016 in Las Vegas. It is focused on his journey from developer to Teamwork.com CEO and the mistakes and lessons along the way. His slides are included whenever possible so you can feel like you were right there in Vegas with him!
So… who am I and why should you care about what I have to say? Well, I’m Peter Coppinger, the co-founder and CEO of an Irish company called Teamwork.com. I also go by the nickname “Topper”.
For those of you who never heard of us, we make three products: Teamwork Projects for getting work done, Teamwork Desk for support, and Teamwork Chat for collaboration.
The products are used by almost 400,000 companies all around the world, including some of the biggest companies in the world.
And we are doing over $12 million in annual sales. The beautiful thing about our products is that they all integrate seamlessly.
I’m not here to convince you to use our products (which are vastly superior to our competitors) or to brag (we have a long way to go). In fact, I want to do the opposite because I have a confession:
I’m a bad CEO because I freakin’ love programming too much and I know I’m bloody good. (update: I’m a ok-ish CEO today in 2019 – Peter) Here’s the thing: looking back now, we made just about every mistake in the book partly because my co-founder and I concentrated on product and features to the exclusion of everything else. I’m going to walk you through our story in three parts, and list some of our biggest mistakes along the way. Hopefully, this will resonate with some of you and you can skip making these mistakes yourselves. I’m basically giving this talk to the younger me.
Part 1 – The Hamster Years
OK, back in 1999, when the <blink> tag was cool, I started a web design business called “Digital Crew” with a buddy Cormac.
Dan joined us the following year and he was the only other person I had ever met who also truly loved programming and had similar ambitions. Back then, we were naive web developers who thought three grand for a website was insane, and that we could each easily crank out four websites a week and make millions. You can’t. We didn’t.
Fast forward a few years, we transitioned to a web application development agency, built 100s of projects, and learned the hard way that consultancy sucks. Despite working 60 hours a week and having a great reputation, we felt like this hamster and we were broke. Cormac decided to move to Australia and Dan and I were depressed. We agreed that we were going to give it 12 months more or throw in the towel and “get a real job”. Side note: We had actually tried another product called cftagstore.com where we sold small software components to web developers. The market was too small and developers like us are very stingy. We made about $100,000 over five years. It helped pay the bills but was, in hindsight, a silly distraction. Side note: We also built an app for a local college that with their encouragement turned into a side business. For years, I hauled my ass all over Europe trying to convince colleges to buy this software. Enterprise sales is hard work and making the software isn’t fun. We eventually spun that out into a separate business and I personally got out of it. I think I have like 5% or something and these guys are doing well now. It’s fine, but not for me.
In early 2007, I took a good hard look at our consultancy and realised that part of the problem was that we didn’t have a good way to manage all the projects, and that we were being way too nice to customers. So, with nothing to lose, we doubled our prices and started actually charging our customers for all the extras and, shockingly, they had no problem with it. We actually started turning the consultancy around. It was then that we decided that the whiteboard in the corner of the office wasn’t a very good project management system, so we went in search of a good project management system.
I know you hear this all the time but we really did start Teamwork to scratch our own itch. Here’s what happened. We had heard of a few online project management apps and did some research to see which one might work for us. We used the leading product (that will remain nameless) for a while and were shocked that you couldn’t even set a due date or attach a file, so we couldn’t understand how it was so popular. I emailed their support and asked if and when a due date feature might be coming. The response I got back was so curt and dismissive that it really pissed me off. I mean how can you run a business if you can’t prioritize your hundreds of tasks? Isn’t that the whole point? We also felt we were making better and more complex apps for our clients all the time.
One day, Dan and I met for coffee in the morning as usual, and I said, “Hey, Ted (we call each other Ted), I think there’s a gap in the market here and we could make something great and, you know, maybe treat our customers with respect.” He said “Ted, I’ve been thinking the exact same thing.” And that was the full extent of our market research.
Part 1 – Key Takeaways
Consultancy sucks – get out of it asap. If you want to be successful, you have to build products. Products make you money while you sleep. Consultancy does not.
Don’t target a small market!
Just my opinion – don’t sell software components to developers.
Consultancy-ware software is no fun to build or sell. Side note, it’s important to know what software world you are in. If you haven’t read everything ever written by Joel Spolsky, you need to leave.
If you are doing consultancy, try increasing your prices, say no to feature creep, and charge for the extras. They don’t mind, really.
Treat your customers like honored guests. Listen to their woes. Publish your roadmap.
Sometimes you’ve got to go with your gut.
Finding the time to work on Teamwork was difficult. After having the idea for weeks and making no progress, we finally decided that the only way this was going to get done was if we dedicate Fridays exclusively to it. No matter how much pressure was on, this was our priority. It was a great decision. Often we worked all weekend on it too, and slowly, over the course of three months, the product came together. We were our ideal customer. We knew which features were lacking in the existing products out there and we knew exactly what we needed to build. We wanted to be able to come to work every day, open Teamwork, and see a prioritized list of tasks to work on, along with some time tracking and billing.
You’ll cringe at this – we did what comes naturally to us, we opened our code editors, started a new project and started hacking on code instead of designing the product screen by screen. We did this completely the wrong way. No specs. Hackedy hack hack. The only thing that saved us was our years of experience building apps for other people.
Please, don’t do this. Use Peldi’s Balsamiq and knock up a each screen and read Joel Spolsky’s great essays on Painless Functional Specs.
When we designed our second and third products, we did it right – we did our research, wrote up our specs, agreed on our MVP, designed every screen on paper, then designed every screen in detail.
Before we released Teamwork, we used our own product every day for two months. We filed away all the rough edges that made it cumbersome to work with on a daily basis. We’ve kept this up and still use our own products every single day and this is one of the reasons they are so strong – we fix the small issues. So, at least, we did that much right.
When it came time to pick a domain name, unfortunately the guy who owned Teamwork.com wanted $10 million, which was a little bit outside our $100 budget. So, in the end, we went with a terrible domain name – “teamworkpm.net”. Could it be worse? Captain Hindsight says we should have called it getteamwork.com
When it came to launching a product, we did everything wrong – we had no private beta, we did not consult potential customers, we did not put up a launch page, we did not build a launch mailing list, we did not send any emails about it, and we did not try to get PR. After months of work, we launched Teamworkpm.net to zero fanfare on October 4th, 2007. We barely put a link on our own website. We gave each other a high-five and went home to bed. Why didn’t we try to get more attention? Looking back, I think the problem was that because we were perfectionist developers, we never felt our product was good enough to brag about. It was missing some big features that we wanted and not as polished as we would like. This was a huge mistake. It did work after all. We did a slightly better job with the launch of Teamwork Desk last year, but still have a long way to go. We’re going to do everything right with the next product launch!
At MicroConf Barcelona last year, Rob’s talk on Positioning really hit home with me. In a saturated market, we were selling our product purely on features and we never had any decent positioning. We’re correcting this now, but it was a huge mistake: there has to be something about your product that makes it stand out. Saying “easiest to use”, “best”, or “most full-featured” won’t work. If I could do it again, I would A/B test different messages from the start to see what resonates.
It was hard work as Dan and I were the database designers, product designers, UI, backend and frontend engineers, marketing, sales, and support – all while holding down our full-time consultancy jobs to pay the bills. We kept our consultancy going to pay the bills, but we had no passion for it. All our dreams and aspirations were bundled up in thousands of lines of code. We kept hacking on the product all day Friday and every other spare moment we could find. Boring client work was done Monday to Thursday.
Instead of marketing our product, we did what came naturally – we kept working on features with the mantra that “if we build it they will come”. We naively thought that the best product will win. Now to some extent this is true, because project management is so critical to a business, a small percentage of customers will try every product on the market until they settle on the best one; so we did pick up some customers because we had important features like privacy, templates, and recurring tasks.
We did only three things well:
We built a great product.
We treated our customers like honored guests.
We took every suggestion onboard (sometimes implementing an idea within an hour and amazing our customer). We publish our product roadmap.
We completely failed to market our product because it was a skill that was outside our comfort zone.
Now, it wasn’t all bad when it comes to marketing, we did some engineering-based marketing. We set up a referral scheme and we made an importer for our biggest competitor. Both have worked out well in the longer term. The other thing we did well was publishing a monthly newsletter with feature updates consistently every month from the start. If nothing else, it gave us a push every month to get things done in time just so we had something for the newsletter. It also helps build trust and loyalty with our customers.
In our first month, despite doing zero marketing and being listed only in the bowels of Google, it was shocking to us that, somehow, we managed to bag three customers and earned a massive $191. We were on the way! As you can see, it was very, very, very slow growth, but eventually we were doing a couple of thousand a month.
We had some staff and we had offices to pay for, so we decided that we needed $30k MRR to pay all the bills and have a healthy buffer. It took us three years to get there. As we slowly scaled to $30k MRR, we were able to dedicate two working days, then three working days, four working days, and so on to the side project. Our “pizza money” side project eventually started generating more money than our consultancy work, until the consultancy became just a thorn in our side.
In the end, we gifted our entire book of clients to another consultancy company we trusted. Our asking price was just that they keep our clients happy. We hand-held the transition by arranging meetings with our top clients to introduce the new owners of Digital Crew. Thankfully, the guys there did a great job and this handover went really smoothly. To be honest, because we had lost interest in client work, I think our clients welcomed the changeover. Once we were free of the shackles of consultancy, we cranked out the improvements, still focusing on features and support, and excluding everything else.
So, it took us three years to get to the point where we could fire our consultancy. It genuinely never even occurred to us to look for investment. It’s just not something that we’d ever really heard of way back then. It’s annoying to me that so many developers nowadays seem to think they need funding to get a product off the ground. Here’s the thing… it has never been cheaper to make software. Our first dedicated server for Teamworkpm.net cost us €23,000 base plus hosting. Today, you get that for $100 a month. Which brings me to another mistake – dedicated hosting and Hell Night.
August 2012: We used dedicated servers for performance and we had several beastly dedicated servers at a big hosting company on the East Coast. One night, I was just about to turn in when I noticed that Teamwork wasn’t loading.
Everything was down. Panic set in. The hosting company had gone completely dark on us, Teamworkpm.net was down. Others websites I knew were also hosted with them were also offline. The worst thing was that I couldn’t get through on the phone; even our account rep wouldn’t answer his cell phone. I sat there feeling helpless with emails and tweets pouring in. I hit refresh maybe a thousand times over the next eight hours.
I stayed up all night answering angry customers, apologising to them and trying to contact the hosting company. We vowed never again, and over the next two months packed everything up and carefully moved all our customers over to AWS. It’s been a great decision for us.
We rode the long slow SaaS ramp of death until we hit $89,176.60 MRR in December 2011, 50 months after we launched. This would be over $1m in annual sales. We still had done very little marketing. We didn’t have a marketing person and our attempts were scattershot at best. We had our collective heads down building features, still thinking that features = customers. Thankfully, these days, thanks to Twitter and blogs, we live in a world where the best product will at least get some traction. Our product really did grow by word of mouth and the occasional blog post that somebody would write about us or tweet about us.
Part 2 – Key Takeaways
There is never a better time to start working on your product than right now. Make time.
Pick a good domain name. It really matters.
Design the product right – Reach out to potential customers, design on paper, then mock it up.
Launch it right – put up a landing page, build a launch list, release an early beta.
Don’t compete on features alone; find your positioning.
Fire your day job and go “all-in” asap.
If possible, use your own software every day (eat-your-own-dog-food).
Don’t take funding. You’ll burn through the money and have a boss and, hey, it’s less fun.
AWS hosting for the win.
Be ultra serious about marketing from day one. Watch Gail Goodman, CEO of Constant Contact‘s talk “How to Negotiate the Long, Slow, SaaS Ramp of Death”. It’s epic. TLDR: Try Everything, Test Everything.
Publish a monthly newsletter to your customers.
Part 3 – Growing Up
The single best business move we ever made was reaching out to the dude who owned Teamwork.com and over the course of a few years hassling him until he gave us a realistic price:
Dan tried in 2011, Alec sent us to DomainValue.com Single Word which estimated 10 million. No, thanks.
In 2012, I tried again and got a PFO.
In 2013, I got a notion in the pub one night and offered $100k and got told “Same lowball offer”
So, I asked for a counter offer.
Alex countered with $675k.
I nearly wet myself with excitement.
I carefully worded our agreement, even pretending that we have a board.
This was almost all our cash reserves at the time.
So, did it make a difference or was it a waste of money? I think you already know the answer. Let’s have a look at the chart again.
You can clearly see the inflection point when we launched Teamwork.com. It was the best business move of my life. Teamwork.com being a one word domain gave us instant credibility and we started getting bigger customers, more referrals, and being written about more. Everything accelerated and our vision for Teamwork.com changed because we now had a brand identify that we could build several products under.
This is embarrassing to admit. Two years ago, I went off to New York and worked on building a new product night and day for six months. In the end, we had a sexy new framework for future products and a cutting edge new product in Teamwork Desk. However, when I took my head out of the programming sand, I realised that things back in Ireland were a little bit of a mess – our culture was undefined, marketing was haphazard, we had process problems everywhere, and we hadn’t hired a single developer while I was gone. Dan and I had been busy doing what we loved, building product, and we had left our company rudderless. Nobody in the company could tell you what our vision for the company was. It was there floating in my head somewhere, but not written anywhere. Steli mentioned this yesterday – it’s uncomfortable…
I had a moment of clarity one day when I suddenly realized that all the problems with process, communication, direction, and vision are completely my fault. I wasn’t being a CEO. I hadn’t communicated the vision for the company to the staff and got buy in from everyone. The quarterly meetings weren’t happening magically because, hey, you know I never set them up. We weren’t putting processes in place because I didn’t put a process in place, to… well… put processes in place. It’s shocking to look up from the codebase and realise that you have 63 employees that need direction, and the direction has to come from you. We all suffer from imposter syndrome, you just have to get over it, down tools, and be the CEO. Being just a programmer at this scale is not good enough. And here’s the thing – I’m convinced that had I stepped up earlier, we would have gotten to $12m in sales a hell of lot faster with less stress.
Everybody hates meetings. Especially us. But one essential meeting to which I recommend every company sticks is the quarterly review. Just four times a year, just get out of the office, sit down and identify your top five problems and what you are going to do to fix them. That’s it. Had we done that earlier, we would have recognised the hiring problem, the positioning problem, our marketing problems, our lack of vision, and issues around lack of process. I think it’s a good idea to have these outside the office to reinforce that this is not everyday work. As a newly-awakened CEO, the first thing I wanted to fix was getting us to have have quarterly meetings. These offsite meetings have become the heartbeat of the company.
At the first offsite, it was awkward and uncomfortable because all of this was new to us, and I guess that is just part of growing up as a company. I remember nervously sharing my vision for the company and where we want to take it by 2020. It’s ambitious to say the least but we are on-track. Once I had buy in, we set about communicating this to the company. This is still an ongoing process. It’s the CEO’s job to reassert and drive this vision at every opportunity.
Looking back a big mistake was not hiring deliberately – we only hired somebody when they fell into our lap and seemed like a good fit, but we didn’t go looking for good people deliberately. For a long time, we didn’t even have a jobs page on our site. Today, this is our single biggest problem: finding great people is hard. It’s never too early to start the search. Again, if we had actually stopped programming for a minute, we would have realised that hiring has become our biggest problem much sooner. A simple fix for this is to hire a HR manager as soon as you can afford to.
Culture is something that will happen to your company whether you like it or not: you can only choose to define it or you can let it evolve. For a long time we let it evolve. In the last two years, we’ve taken the reins on this and established a happiness officer, had many more company events, allow sabbaticals, team weekends away, conference trips, publish all our values, onboard staff nicely, encourage people to lunch randomly together and put together our handbook.
We literally have a page in our handbook called “Don’t be a dick”.
I had a realization last year that all the stress people were encountering in the company is rooted in missing processes. For example, marketing and support didn’t know what the developers are working on. This wasn’t an issue when we had 15 people in the same area, but at 60+ staff spread over two floors we have to define a process for how the teams work together to decide on the next features to build and communicate progress. It is pretty easy in the end, once you realise that it’s needed.
I’ll give you another example. We’re in business seven years now and just last month we finally agreed our hiring process: we have three product teams now, so who gets first dibs on a great potential employee; who has final say on whether they should be hired or not; what tests must they do; how long is the trial; will we pay for visas; can they be remote or must they move to Ireland?
We are still figuring this stuff out. When we write it down, at least it provides a starting point for improvement. When we agree a new process at a meeting taking no longer than an hour, that ship has sailed for at least six months.
I don’t know why it took so long, but just six months ago we established a sales team, and already the effect has been monumental. After this conference, we are on our way to meet a huge enterprise customer. I have no excuse for not setting this up earlier so please learn from my mistakes.
It’s an important realization that the CEO doesn’t have to have all the answers and that it’s OK to admit this. I think not realising this was holding me back from stepping up and running the company properly.
In January this year, I brought Open Book Management to our company. Now all our staff can see exactly how much revenue the company is earning. It’s a ballsy move and not done lightly. In addition to this, we’re implementing “The Great Game of Business” and, so far, it has worked really well. If you haven’t heard of it, it’s a system for running the company where everyone in the company shares in the success of the company and is asked to think like an owner. Every person in the company can see how well every other department is doing, and we are all working together to hit agreed targets. If the targets are hit every person has the potential to double or triple their wages. So far, we’ve seen much better communication and collaboration between teams. It’s a huge experiment for us, and we don’t have all the answers yet, but my gut says this is going to work.
It took way too long, but we finally have a great marketing team who are trying and testing every channel to see what works. Gail Goodman‘s talk “How to Negotiate the Long, Slow, SaaS Ramp of Death” is inspiring. We have a long way to go to follow in Gail’s shoes and are humbled by her success.
This is one of the hardest things I have found growing the business. Dan & I can’t do everything any longer, even when we feel that we might do a better job, we have to trust staff to do it. This, for a developer CEO, is bloody hard but has to happen if you want to grow. Now, for example, when we put somebody in charge of HR, they are the God of HR and we trust them to use their best judgement; same goes for the product leads and support.
Part 3 – Key takeaways
Build your marketing team early. Try every channel. Test everything.
Be the CEO. Stop programming (all the time).
Hire deliberately. Hire a HR manager asap.
Hold Quarterly Meetings outside the Office. Identify the Top Challenges. Fix them.
Define your Vision for the Company. Repeat at every opportunity.
Establish Your Culture. Don’t let it establish itself.
Identify that your problems are rooted in missing processes and establish them one-by-one.
Establish a customer success sales team ASAP.
As CEO, you don’t have to have all the answers.
Trust others and Let Go.
So, here’s the thing: for any developer CEOs, you have to learn to trust others, stop coding every now and then, and think objectively about your business. Step up and be a real CEO, share your vision, put processes in place, fix the big problems… and you’ll get to over $10m in sales in a fraction of the time it took us.. because we did make every mistake in the book. Finally, I’ll leave you with this: Be so good they can’t ignore you.
Last year, we gave away 55 free-for-life Teamwork Projects accounts at MicroConf Europe.
This year, we’ve released Teamwork for Startups where we give all Teamwork.com products away to startups for free, for one year. And don’t forget to subscribe to our High Performance Blog for more productivity tips and collaboration resources for startups to corporations.