You might have come across my article about how I learned to program. In this follow-up article, I’m going to tell you how I went from being a newbie programmer to starting my own successful startup—a leap I would never have thought possible a few years ago!
From Web Developer to Entrepreneur: How I Learned to Program and Founded My Own Startup
In this post, you’ll see that with the right education, support and motivation, you too can learn to program and launch your own business just like I did. With actionable steps, advice, and resources, this post will be your one-stop-shop for everything you need to know to become your own boss and launch your own company, just like I did with CareerFoundry.
So this is what I will be covering in today’s post. If you want to jump ahead to a section, just use the clickable menu:
- Which steps to take after learning to program?
- Which tools did you use?
- Should you learn another language at this stage?
- Where can you learn to program?
- Getting work experience as a beginner web developer
- How I went from web developer to entrepreneur
- How to meet your co-founder
- How to define your roles
- How to found your own startup: A step-by-step guide
1. Which steps to take after learning to program?
My first piece of advice to anyone who has learned to program is to start building. Even before you’re at the end of the learning process, start using your new skills to build something you can be really passionate about.
What Did I Do?
When I was going through the process of learning Ruby on Rails, I built a social network. It was a kind of messaging social network app and I worked on it day and night for a month or two, then released it. I tried to get all of my friends to use it but only my nicest friends signed up! I loved building that app, but unfortunately I was the only one who was willing to use it!
2. Which tools did you use?
3. Should you learn another language at this stage?
What Did I Do?
I didn’t feel the need to learn another language because for my purposes (building a functioning website) I didn’t need to.
My general approach to learning new coding languages is: when I need it, I will learn it. This is the great thing about coding; you can learn what fits your particular task as you go along!
4. Where can you learn to program?
When you’re just starting out as a programmer, it’s super important to try out coding before you commit to a long term or paid course. If you don’t enjoy it then you definitely will not want to launch a career in it!
There are tons of resources online that help beginners to learn the basics of programming before deciding it’s really something for them.
For the backend I learned Ruby on Rails , and for that I used Micheal Hartl’s Rails Tutorial. It was through this tutorial that I learned how to build a social network, which is where my own social network messaging app idea came from. The whole tutorial is 100 pages long and I followed it step by step.
Although I found this an incredible resource, I could never quite shake the feeling that I had no idea what I was doing. I was copying and pasting a lot of instructions, and it worked, but I didn’t really know why I was doing certain things, and why certain results came from my actions.
Honestly, I think this is how a lot of people feel when they get into programming—they don’t really understand fully what they’re doing!
It was while I was doing this Rails course that I realised just how important it is to have someone to talk to about these things, essentially a mentor.
It’s no coincidence that it was during this time that I began to have the idea for CareerFoundry: a fully mentored, online web development course for complete beginners.
5. Getting work experience as a beginner web developer
A great way to build up your experience and strengthen your newly-learned skills as a beginner in programming is to get some work experience under your belt as a web developer. It might not be paid work, but having projects with deadlines for other people can be a great way to learn about managing expectations as well as learning what you are able to get done in a certain time-frame.
- Ask a local cafe or restaurant if they need a new homepage
- Approach a local school about building their website from scratch
- Offer your services to a charity
- Apply for small jobs on Craigslist or Gumtree
- Help out a member of the family with a portfolio site for their project or business
Although these small jobs won’t earn you much (or any) money, they will get you the experience that is crucial to you at this stage as a developer.
What Did I Do?
At this stage I was desperate to get more experience in programming and to build something again without having to follow a tutorial step by step. I needed to learn how to Google things without constantly having to look it up. I knew that if I could get through and build something on my own without having to go through a tutorial step by step, and be confident in what I was doing, then I would be ready to take on real web developer positions, or start thinking seriously about my own product.
I also needed experience of working in a team—a crucial skill for all developers. Even though my abilities were good, my confidence was still relatively low because I lacked real-life experience. So I:
- Volunteered my services to a family friend and offered to build his website
- Worked on a small joint project with my mentor
- To further increase my confidence and experience I then got to work on my next project which was the CareerFoundry homepage.
But the most significant thing I did was I left my corporate job with Nokia to work for a startup.
Although my intention was never to work at a startup, I did want to know what running a startup would be like. So I quit my steady job at Nokia (where I had been for 5 years) and got a job at a startup in Berlin. This was a conscious decision to break away from my corporate environment and see what startup life was like and if, eventually, I would be suited to working as a founder. Although I was not working as a web developer, I was able to absorb the environment and learn how a startup is run.
It was a dangerous move. I went from a very stable, well-paid job to a job with a newly founded startup where my job was not secure, the employee benefits were not as good and the future of the company was uncertain. When the company failed, I suddenly had all this time on my hands to learn how to program.
It turned out to be the right choice for me in the end, because if I hadn’t started there, and the company hadn’t failed, I would never have founded CareerFoundry. It was also valuable experience of startup life, knowledge I have been able to put to good use as founder of my own startup.
6. How I went from web developer to entrepreneur
Becoming an entrepreneur is different for everybody, and there are no hard and fast rules. We all know that you don’t have to be a web developer to found a startup, and you don’t have to want to be an entrepreneur to be interested in a career in web development. However for me, like many people, the two went hand in hand.
Starting my own business is something I had thought about for many years. My father and sister are both entrepreneurs so perhaps it runs in the family! Years went by without me doing anything, but I talked about it all the time. It was probably ten years from when I had the idea to start my own company before I did anything about it.
Why Didn’t I Get Started Sooner?
The main problem for me was finding someone who was equally as engaged in the idea as I was. Over the years I had talked with my friends about my ideas for startups , but I felt like I was always the most engaged and they were not ready to take the next step, like quit their jobs and really invest in the project. I began to feel disheartened and wondered if this was ever going to happen! I was in my mid-30s by this point, and I was wondering if it was getting too late to start!
Going it alone was not an option for me; I needed to find a co-founder.
Starting a company completely by myself was not something I even once considered. I wasn’t sure if my ideas were good enough, I needed somebody to say “This is great! Let’s do it!”.
When I was introduced to Raffaela through mutual friends and she was talking about doing something, it was the perfect moment for me: I was free (not working at that time after the startup I was working for closing down) and I was at a stage where I was confident in my programming skills so I could build our product. It was a no-brainer to try it out.
7. How to meet your co-founder
Raffaela and I had a mutual acquaintance who introduced us. But there are a number of ways to find potential co-founders.
- You Could Advertise: Placing an advert describing the sort of person you are looking for and the area of interest can be a great way to find your co-founder. Check out sites like Berlin Startup Jobs, Craigslist, Gumtree, CofoundersLab, Founder2Be, techcofounder, FounderDating, and FoundersNation.
- Attend Tech Meetups: Take a look at meetup.com and see what’s happening in your area. You may find specific meetups and networking events for people who want to be co-founders too.
- Utilize Your Online Network: Take a look at your LinkedIn contacts and see if there is anyone working in the field you’re interested in. They might not become your co-founder, but they might know someone who will.
How Did It Work For Me?
When I met Raffaela, she had the idea about starting something in education and careers, and I had just gone through this experience of learning how to code. She wanted to start doing web development courses and to disrupt tech education.
Raffaela had already run a meetup for doing an offline course and she asked me if I could be the mentor for that course. It was an exciting time — despite only just learning to code myself, I became a teacher for other beginners!
Despite being a relative beginner myself, the offline courses worked out really well as I was able to completely empathise with the problems of people who are just starting out — they were still clear in my mind from when I learned. The 2 or 3 months of learning that I had behind me was enough for me to help our students with their mistakes and their fears.
It went so well in fact that Raffaela asked me to do a mentoring session again! After a while, we talked about getting someone else in and we started calling them mentors, and that is how the idea for CareerFoundry — online courses with expert mentors — came about.
Finding The Right Person
Finding the right co-founder is crucial to the success of your startup: you’ve got to get along personally as well as professionally. Raffaela was not the only potential co-founder I met; for a while I was also considering partnering with someone else. However the fit just wasn’t there and I soon realised that if this was going to work long term I had to be able to feel like I could really communicate with my co-founder.
In the end this is why I decided to work with Raffaela; we had similar working styles and excellent communication from the start. We wanted to achieve the same things and we had similar ideas about how we were going to make them happen.
Make sure you like the other person personally, share the same ideals and work ethic and get on as people, not just as co-founders. If these things don’t work, the working relationship will suffer too as you will be spending A LOT of time with this person and you will need to be able to trust them, rely on them and communicate with them about everything.
8. How to define your roles
Defining your roles as co-founders is pretty crucial to building your startup. You need to play to your strengths and think carefully about what you actually enjoy doing. With Raffaela and I, it was fairly obvious where our strengths lay.
I was a product guy. I have always worked in product. I was also technically-orientated, having studied Computer Science at university and then later having learned to program and built my own app. It was clear that of the two of us, it would make natural sense for me to become our CTO. I love creating products, tweaking, improving and strategizing what comes next for our product.
Raffaela’s background is very much business-focused. Having set up startups on behalf of Rocket Internet and with a solid background in finance, I knew that our startup was in safe hands with Raffaela at the helm as CEO. Raffaela loves meeting investors, networking and thinking up the big ideas that drive us forward as a company. Her enthusiasm, determination and drive is also incredibly infectious!
9. How to found your own startup: a step-by-step guide
- Be passionate about something or have an idea. In my case it was helping others, like me, learn to code.
- Find a co-founder. Someone with whom you can get along with both personally and professionally, who is willing to make the same sacrifices you are.
- Be willing to work full-time on researching your idea.
- Test, test, test, and test some more. Test as much as humanly possible before building or launching anything. You won’t regret it.
- Study your competition. Befriend them. Find out what they don’t have that you do.
- Have a financial safety net.
- Surround yourself with good people who are as passionate as you are about getting your idea off the ground.
- Be brave and trust in your idea, the results of your research, and your team.
Do you know somebody who is looking to found their own startup? Share this guide with them!