On the 9th of April 2014, I closed my business, packed my bags, and flew to Belgium, after struggling with my startup for roughly 2 years. This is a story about shortcomings, failures, depression, and personal mistakes I have made in the last 3 years.
There are quite a lot of stories about failed startups floating around, describing post-mortems in detail, so with this story I aim to take a more personal side, describing my feelings and thoughts during the time, and how I’ve learned to deal with failure.
I am a 28-year-old developer, an avid Hacker News reader, an AI enthusiast, and a musician in my spare time. I have been programming since I was 10 years old. I started because I dreamt of making incredible games, but sooner rather than later I ended up writing corporate software (ERP/MRP/CRM) and designing/developing websites as this was far more profitable, and easier to get into. From age 12 onwards, whenever someone asked me what I wanted to do when I was older, I would always say “I’m going to be a programmer”. And a programmer is what I became.
My other dream was to own a business. When I was 13, I started my own “business” making simple games (and later on websites) with my best friend. Shortly after we had an amicable split due to creative differences and he formed “Comic Smileys Corporation” whilst my business was called “PixelMixer Software”. I drew organigrams, business flow-charts, and meagre attempts at business plans.
Of course I had no viable business model, and after a while I postponed my plans, whilst retaining the spark and curiosity.
The truth is that bootstrapping an IT business is a nightmare. Some people are lucky, some people are not, some people turn a side project into a million-dollar business, and others fade away unnoticed. In most cases, it will be a long bumpy ride until you get to where you want to be.
That long ride will be full of inconveniences and doubts, ranging from “how am I going to get enough money for the payroll this month?” to “am I really doing what I want to do?” or even “Maybe I’ll just close this thing down and go back to being a developer on a payroll; At least I had a steady income that way“. The stress of owning a business without enough hands nor experience can break you down mentally, affect you physically, and even strain your relationships. Some people succeed, but for me it was a long winding path which culminated in a year-and-a-half depression and the closure of my start-up.
This is the story of how I went through all of that and more during my two year start-up endeavour.
Chapter 1: A lifelong dream
It all started while I was studying an MSc in Artificial Intelligence at the University of Edinburgh in 2010.
I started planning my business and the product range over a year before returning to Mexico. My friends kept asking: “Why would you start this in Mexico? Why not open a company over there? You’ll make much more money!” But my reply was always the same: “The majority of Mexico’s GDP comes from SMBs, and technology is being adopted at an incredible pace right now. With so many new companies bubbling up, there is a growing demand for cheaper SAAS ERP/MRP/CRM solutions, websites, e-commerce sites, and other IT solutions“.
Technically speaking, my response was correct, but I hadn’t factored in an important obstacle: Micro and small businesses in Mexico are used to paying low prices for IT solutions. The market is not used to paying competitive prices for professional software programs, software consulting, or full-time development work. Hence why a lot of websites and web systems in Mexico still look like from the 90s. I’ve seen too many half-baked ERP solutions riddled with bugs, even in medium-sized companies. Companies just don’t want to swallow the bullet and cough up what’s required for a professional job.
This also explains why quite a few of my developer friends in Mexico have moved to Redmond, San Fransisco, and Seattle in search for better-paid positions.
I returned to Mexico on the 4th of July, 2012. Less than 3 months later I had three small clients looking for an administration system, and started the process of relocating to a small office. This was my first mistake. I didn’t need an office, I just wanted one. I joined forces with two friends (who had their own micro companies) with whom I paid the rent. We had a bright, modern office space in the south of Monterrey. The future looked promising. I was earning a good amount of money, paying my bills on time, and acquiring computers and other office assets.
I dreamt of beautifully decorated offices, with a pool table and a large screen TV. I dreamt of people hacking around on Arduinos and Raspberry PIs in their spare time. I dreamt of small teams collaborating in great ways. I dreamt of a place that would be fun, engaging, inspiring and challenging. It turned out to be anything but that.
The workload started building up in the first few months, and I was making regular trips to Mexico City and Guadalajara, so I decided to hire a couple of people: a developer and a graphic designer. First I found a designer, recently graduated, willing to take a lower pay in exchange for real-world practice. I then published an ad in the newspaper, on university sites, and on LinkedIn, and a few weeks later I made my first development hire. We were a motivated team, we had goals, and we believed in each other.
We were earning a decent amount of money developing ERP solutions and designing custom websites and tools. I didn’t think about offering stock to my first employees, nor did I look for investors. I didn’t want to give up any part of the company, as I blindly thought that I could lead it by myself. This was my second mistake. Don’t be selfish, working with partners can be difficult sometimes, but bright minds (and a bit more money) go a long way. It’s all about choosing the right partners, and incentivising your first employees by offering at least a small percentage of the company, specially when you don’t have any initial investment.
By the end of the year, unfinished projects started to build up, clients were getting desperate, and there I was, thinking about the future, moving somewhere larger, and getting more servers. I got everyone involved designing and developing applications I had dreamt about instead of doing enough client work.
Then the inevitable happened: We started falling behind, money wasn’t coming in as fast because we hadn’t finished what we promised, and our newly-finished CMS system wasn’t selling. I couldn’t hire salespeople as I barely had enough money to pay my employees. I started rushing everyone to finish our previous commitments, but it was too late, the damage was done.
I’m not saying it is bad to think big, and to be optimistic about the future. I think the biggest lesson I learned during this period is that you must always focus on your priorities, and only develop those non-paying risky ideas in your spare time. My file-based super fast CMS system should have been a side project. If we had concentrated on our paying customers at the time, we would have probably finished our work sooner, and we would have been able to look for more clients, which would have brought more money in, which in turn would have allowed us to start fiddling around with other ideas.
But I let my long-term goals blind me. If you play around instead of studying, you will probably fail the exam. Likewise, if you wander off developing what you think will be the next million-dollar app, while your actual customers sit around waiting for their products, your business will definitely fold.
Chapter 2: Serial mismanagement
We were approaching the end of our first year in business.
At the time, we were about 65% done with our ERP system, we had a CMS system on the market, and we had regular payments from two clients who were waiting for the ERP. We also had a custom ERP/CRM project in the pipeline for another customer.
We were three people dealing with all of this. Ideally, we should have stuck to developing these projects, finishing them, and then start looking for new opportunities. The problem was that these projects were long-term, and the amount of money we were receiving barely paid the bills and salaries.
That’s when custom web/design projects started coming in, projects I chose to take, believing it would give us a greater short-term cash flow and allow us to eventually hire another developer to help us out with client work.
New work came through collaborative efforts
We started collaborating on projects with the other two start-ups in the office space. One of them was a design and branding studio, and the other one was a digital marketing agency. It was a natural fit for the requirements of many of our customers.
One start-up would do the branding and design, then we would do the web design and website, and finally the other start-up would create FB/AdWords campaigns.
The problem is that, these short-term projects grew in scope, stagnated, went very slowly, or had a bunch of unexpected challenges, thus leading them to take much longer than expected to be finished.
I sat at my desk one day looking at one of my whiteboards which had a list of customers/projects and their statuses. We had 15+ projects, most of them half-done. How could I let this happen?
I was in a scenario where I would visit clients every day or so, we would have a ton of meetings, while my designer and developer tried to get most of the work done for our short-term customers, while our long-term customers grew more and more impatient.
Just as you shouldn’t spend money you don’t have (via credit), don’t take more than you can handle
Eventually we finished most of our short-term projects, but money was running dry, and our large customers weren’t paying regularly as they paid based on results. Thus I started borrowing money to pay for my employee’s salaries. This is probably the worst decision I have ever made.
The rational decision would have been to finish up on anything we could, notify our customers, deliver all our source code and set up local machines, and close the business.
But I believed. I believed in my business. I believed in success. I knew it would come to us, but it would probably take many years more than I thought.
I started worrying all the time; I didn’t look calm, I didn’t look like I had everything under control, and my employees noticed this. I couldn’t focus anymore, I was constantly re-arranging our processes, trying to find a way to keep moving forward and return to better financial days.
I could see the worry in the face of my developer as well, he didn’t look calm anymore, he was evidently worried if I’d be able to pay his next check, so he decided to leave. I requested he stay for another week, to finish as much as possible and document the latest modules he had developed. He agreed to this, finished up, and I paid him for his last week at the office.
No hard feelings, I had it coming.
But now I had two problems
Design work for my ERP system had been finished, and we were no longer working on smaller web projects for customers, thus, I didn’t need a designer in the short-term, but I didn’t want to fire her either, as I envisioned a day where she would take care of the design/UX of our mobile apps, advertisements, etc.
Additionally, I no longer had a developer, so I would have to communicate with clients, do our accounting and invoicing, cash cheques, develop, test and deploy the ERP, do the project management, find work for my designer to do, amongst other responsibilities.
I felt like a mess. But I would keep pushing things forward, for the sake of the business, for the sake of my future.
Chapter 3: The fold
When business starts going awry and you’re burnt out, you start doing stupid things.
During the summer of 2013 I started drinking a lot. This is when my depression started, something I didn’t admit (or even realise) until recently. I’m not sure if I became depressed due to my drinking, or I drank due to my depression, or maybe both were simply symptoms of the life I was leading.
I started going into the office late (at around 10:00 AM) feeling pretty apathetic. I no longer saw each day as a myriad of opportunities waiting to be taken. I no longer saw myself as a young entrepreneur with big dreams for success, I simply saw in me a person trying to get ahead.
As far as I can remember I’ve always had a path I would follow. I would plan things and always follow through with them. I started to realise around this time that I had diverged massively from where I thought I would be by this age.
Every time I made a decision (like going to Scotland to study an MSC or opening my own business), my family members praised me for always following through. But I kept judging myself for all the things that went wrong instead of feeling good about the fact that I was trying my best, or what I thought was my best back then.
I also didn’t believe I was depressed, I didn’t even think about it. I thought it was just a rough period I was going through. I didn’t feel sad, nor did I feel happy, I simply felt empty. That should have been a clue, but I didn’t care. I had to move on, blindly, painstakingly.
After my developer quit and things were not looking good, I started wondering about my life, what I was doing, where I was going. I realised I had stagnated. My coding style was becoming obsolete, my developer friends were moving to newer and better things (Rails, Angular, Backbone), and I was stuck using the same languages I had used for years.
December 2013: Google and Amazon send recruitment emails
At the start of December I got two very interesting emails: Both Amazon and Google wanted to hire me. This lifted my spirits a bit, as I felt at least someone cared about my work, and it might be a great chance to learn new things and collaborate in an interesting environment.
I decided I’d go through the recruitment process just for fun, after all I still had my business and I was just curious to see how I ranked up against other recruits.
I communicated this to my clients and family members. All of them told me “go ahead, you need this”. So after initial talks with the recruiters, we decided January would be great for the interviews at both companies. I’d have an online test with google (while speaking on the phone), and Amazon would host an event in Guadalajara, Mexico, where 50-100 prospects would turn up and go through a series of interviews.
Then came Christmas. I had a talk with one of my uncles, who was also an early backer of my ERP project. He gave me some valuable insight after I tried to explain what I was going through:
“You have talent, but you have no structure. I’ve met so many people in life who had talent but turned out to be failures, not because they lacked ability or passion, but because they thought of themselves as such. I recommend you go to work for a larger company, where you can learn a lot, and then in the future, if you still have the same amount of passion, try setting up shop again.”
At that moment I didn’t understand what he meant with “you lack structure”. What kind of structure? How can I lack structure if I plan everything so meticulously.
It’s not about planning, it’s about constant and honest execution, it’s about being proactive and constantly communicating the status of each project to your customers, it’s about arriving early at work, not drinking heavily on workdays, thinking straight, working hard, and being persistent.
After talking with a few friends about this, they acknowledged that I did lack structure. So I decided to put some effort into the interviews I’d be having in January. I realised they were right, I was just too inexperienced, and I was trying to do everything myself, without the capacity to do so.
Jan 14, 2014: Google Interview
The interview process was simple albeit somewhat strange. There would be multiple interviews if I was successful in the first one, otherwise I would be instantly disqualified and the next opportunity to try again would be about 6 months later.
The interviewer would call me at 3PM on my land-line. I had to be online and on a shared google document ten minutes prior to our meeting.
She then explained the question on the phone and I had to provide an optimal solution. It had to be real code, not pseudo-code, and she expected it to compile. I chose Python as I am familiar with the language, and the syntax, logic, and native functions are easy to remember.
The question was simple: Given a list of elements, generate a new randomly-sorted list with the same elements.
Unfortunately I assumed something crucial: Not all elements had to be in a new position. First I provided an O(n²) solution which used a hash table to record positions of each relocated item. I managed to turn this into O(n) at the end of the call, but given my incorrect assumption the whole code was flawed.
To make matters even worse, I tried to code out in Python afterwards and it didn’t compile due to a missing colon. I wrote a song about this afterwards (albeit a very bad one).
Jan 28, 2014: Amazon interview
I spent 30-60 minutes every day studying for the Amazon interview. I covered many topics (semaphores and mutexes, deadlocks and live-locks, more complex tree structures, quite a few sorting algorithms, load balancing, the gossip protocol, and a bunch of other less relevant ones).
I felt prepared. I headed off to Guadalajara to a hotel where the interview would be. I arrived a day and a half prior to the interview, so I had a bit more time to study and practice.
I felt I did well in 2/3 of the interviews, but the last one included a couple of low-level questions which I struggled with as I mostly do high-level development.
One of the questions was very simple: How are negative integers represented at a binary level? Simple, I said, one of the bytes indicates if it is negative or positive, the rest are the actual number. Technically speaking I was correct, but I missed the fact that each bit is inverted as well.
I failed both of them. I was devastated when I read the emails.
Amazon’s came first, and Google’s mail came a few days later.
The experience was also a good one though: Google and Amazon aren’t the only ones out there! I had no plans of going to work at Microsoft, but I’d give it a shot at other hip companies in the valley.
I applied at Github, LinkedIn, Heroku, Rackspace, and about 30 other companies. For my Heroku application I even deployed a Heroku-branded website to Heroku with a video-song explaining why I wanted to join Heroku. Incredibly cheesy, but I thought it would get me noticed.
I received about 3 replies that week, all of them stating ‘not at the moment’. Heroku didn’t even reply. I removed the website shortly thereafter.
One day I was talking with one of my best friends, who lives in Belgium. I was telling him how I felt and how I wasn’t really happy with my life at the moment. He suggested I go to Belgium to live and work; he would help me find a job, and I could stay at his house for a couple of months while I settled down.
Five minutes later I made my decision. Belgium would be my next step. To make it even more interesting, I decided to go without a job secured. I’d analyse my options after arriving, and if I didn’t find anything in the IT sector, I could always do something else.
Some of my clients and family members said I was crazy. One of them even said “you are 27, you can’t go doing stupid things like that anymore. It is too risky, why don’t you just find a company over here, work hard, earn money, and then try again in 3-4 years?”. My reply was simple: I’m not only trying to make a statement that I need to change my life drastically, but I also want to learn a new language, seek professional growth, get to know new people, travel a bit (I hadn’t taken a holiday in almost two years), and live in a smaller city (Monterrey has 4M+ inhabitants, you can almost smell the chaos and stress of people living there).
Don’t get me wrong, Monterrey is a beautiful city, but sitting an hour in traffic to get to a meeting under 40C heat is not really my thing.
Then again, my closest family members and friends supported my decision. I had even gone to a few sessions with a psychologist, and he blatantly told me: “You’d be stupid not to do this. So many people would love to do the same, but can’t due to not having the right nationality or skill set, or being tied down by family or work reasons. You have this opportunity right now, so just take it.”
My decision to leave wasn’t rash, blunt or precipitated
Some people might say “how and why would you make such a life-changing decision so fast?” I studied my reasons and noted three main positive points for leaving:
- I wanted to join a company where I could earn enough money to repay my debts.
- I wanted to join a well-positioned start-up with at least 25 people, multiple developers and established frameworks, where I could learn new technologies, and acquire more “structure”.
- I wanted to learn a new language and experience a different culture. Change is always a mind opener, and I had stagnated for too long.
- I believed it might help me get out of my depression, and destroy my comfort zone.
I marked April 9th on my calendar as the date I’d travel to Belgium and finally put some order and excitement into my life.
Chapter 4: Restart
I spent the last few months selling everything I owned. I sold my computers, monitors, audio equipment and instruments on Facebook ‘buy-sell’ groups, and used the profits to buy my plane ticket.
Shortly afterwards my friend from Belgium asked if I’d like to join for a 3 week trip to Australia and China. Given that I had no immediate responsibilities, and that the price for the plane ticket was quite low, I jumped at the plan and transferred the money straight away.
Afterwards I realised I’d require a few other things for the trip; one of them being an international driving license, which cost quite a bit.
After all the expenses I had a little over 1,000 euros to survive a couple of months in Belgium, including trip expenses! I didn’t remember how expensive it is over here, but this is something I’d find out further down the road.
Around this time I began to make new plans for my future. I decided maybe I wanted to stop being a developer for a while and dedicate myself to something that requires a completely different skill-set. Something more social.
April 2014: Belgium
I flew to Belgium on the 9th of April and met my friend at the train station.
I settled down at his small 3rd floor studio and started looking for a job. I was motivated to try something new, so I was looking around for different types of companies, but most of them required Dutch. I thought about applying at a restaurant or a bar, but to be honest I didn’t like the wages; or maybe I was just scared of trying something new and I couldn’t admit it.
After a couple of weeks I got an interview at a software company. I had an inkling that this is where I belonged even before the interview. I had an upcoming holiday, so I mentioned this during the interview.
This can be a pretty tricky thing to say when you’re not even employed at the time. We reached a consensus: I’d start for a three-week trial period, then go on holiday, and hopefully return to a full-time job if I was a good fit.
The trial period was great, I got to know my coworkers and really enjoyed the vibe. A few days before leaving for my trip I was told I was in. I packed my bags and left with a 3 friends to Australia for a camper-van west-coast trip to Australia, and a couple of days in China.
The trip was awesome, cumbersome, interesting, tiring, scenic, problematic, and everything else you’d expect a trip of such magnitude to be. Overall I had fun, but I was starting to get really worried: I barely had any money and I had a lot of debts; I probably enjoyed the trip 50% of what I would have enjoyed it if I hadn’t worried so much.
The first months back were not easy. I was trying to get out of debt, but kept plunging myself further into it. I borrowed from my AMEX card knowing I’d have to pay back the next month. When the time came, I’d spend 3/4 of my wage paying back my debt only to withdraw the same amount again. It’s not easy to break that cycle; the only way was to bite the bullet and have a pretty rough month.
Another issue that bothered me was that I didn’t have my own personal space. I couldn’t afford my own flat yet, and my back was starting to hurt due to sleeping on a couch for months.
Furthermore, I tried dating, but was very unsuccessful. This triggered my anxiety and depression issues again.
I would go to work at this awesome company which I really loved, but the sense that I was dying inside just wouldn’t leave me. I’d fake happiness, get things done, and go back home at night to play endless hours of Counter Strike. It was the only way to put aside my feelings and become engaged in the moment, in the game.
The strange thing is that I had never been the depressive sort of guy. My sister has been dealing with this for many years now, whilst I had always been the “happy productive guy”.
She recently likened being depressed as like having no arms, struggling around, while people keep yelling at you to grow them back. It’s not that easy, it’s not something you just snap out of. The worst part of it is that I couldn’t even ask for help, not due to pride, but because I just didn’t know what was wrong. I now realise because I wake up every day and I feel alive, I feel motivated… but back then I woke up really tired, struggled to get out of bed past 9AM to be at work at 9:30. It kind of creeps up on you, in the same way your brakes start to fade slowly and you don’t notice how bad they are until someone else drives your car.
I touched rock-bottom in December 2014. It’s pretty hard to describe the feeling of being away from family and friends; sitting alone in the kitchen on Christmas Eve, drinking beer and eating fried chicken. Screw that.
My breakthrough happened less than a month later. A few things that helped were:
- My passion for strong AI was re-kindled as a result of having long talks with one of my best friends
- I started attending conferences and meet-ups. Meeting like-minded individuals makes a huge difference
- People appreciated my talks and presentations at work, which motivated me to start giving more talks
I started feeling confident about my abilities and skills again. Not over-confident, and not in a proud or narcissistic way; simply more secure about my current standing and my future.
I also started making serious life-changing decisions to improve my health and general well-being, and even attempted to start dating again (which I’m still working on). I stopped drinking too much alcohol, and started doing more exercise. All of this came naturally: When you are in a good place, and you enjoy what you are doing, happiness starts to creep up on you, and you start cutting back on most auto-destructive activities.
It’s been over a year now since I decided to close down.
A startup is not for everyone. It might have been your dream since you were little, but if you don’t have the required skill set and experience, then be prepared to sacrifice a lot of things and time to get where you want to be.
I took many bad decisions back then, which affected my physical and mental health, and I was completely unprepared for running my own business. Maybe I’ll try again some day in the future, but for now I have never been happier working for someone else.
If you feel the inkling to start your own company, go for it, it is a valuable experience! But if things don’t turn out as you expect them to, know when to pull out. If you already have your own business and things are looking grim, take a few days off, think about it, plan ahead, and more importantly, ask yourself: is this what I really want to be doing?
Here are my key takeaway points if you are planning a new startup:
- Be prepared, constantly reassess yourself and your position (not just your startup’s)
- Know when to change direction
- Do one thing, but do it as best as possible! This is absolutely critical!
- Name your startup after your product (in the case of software startups). If it is successful and it grows, then make changes further ahead; right now your product is the only thing that matters
- If you are going for multiple product (e.g. the cosmetics industry), keep your product line small and simple, experiment with new product, kill of what doesn’t work (a la Google)
- Make a nice, simple, well-designed website, with catchy but straight-to-the-point copy, and make it as simple as possible to purchase and pay for your product
- Know your strengths and weaknesses, not just the company’s. This will help you with the next point:
- Know when to make big changes in your life that are affecting your ability to lead progressively
- Most importantly, know when to give up, but only give up if the motivation and drive that led you to start your business have gone. Otherwise, you might find that success is right around the corner!