How I became a Software Consultant
This is a true story about my career leading up to me being able to jump ship and become a small business owner, and a freelance software consultant, earning 3 times as much as my highest software developer salary and having a blast!
Disclaimer: This is a very honest blog post, and I have changed all names of the companies and people in the post to protect their privacy and brand. This post is meant to give an honest and sincere representation of my road to becoming a software consultant. So others can see the ups and downs in my career. It is not meant to shame or otherwise harm anyone else, therefore are all the names changed.
Student developer job
Back in 2012, I 22 years old and was studying for my Computer Science AP Degree, I had about a year left and wanted to try putting what we had learned into practice. I had just finished up a halfyear Assisting teacher job at the school itself, helping the younger classes learn to program.
A local company, let’s call then “Invoice Inc.” had contacted the school about being interested in hiring a part-time software developer. My entire class was briefed about the job offer and who to contact; me the ever competition driven personality, wrote up an application and update my CV that same evening. I thought I would have to fight for this position, but apparently since my classmates heard that I was applying and already had an application, they kind of just gave up.
A few days later I was hired for this student programming job. It was a very small company, had about 4 people employed including the owner. The company sold a SaaS application that would receive invoices either by snail-mail or scanned in, and it would read the invoice and do the proper accounting gymnastics, so the customer would not have to spend time writing in all the invoices they receive.
My first task here was to create a web page that could spit out a label sheet with the correct information for sending snail-mail invoices, you know the one where the same label is printed over and over again on a sheet of paper with pre-cut stickers on it.
During my time at “Invoice Inc.”, I had a great mentor teaching me the ins and outs of C#, SQL, and GoF Patterns. I quickly learned that having a mentor, and doing real-life work, put rocket boots on my learning rate, and I quickly surpassed all my fellow classmates in producing working and stable code, and became a lot faster at seeing and implementing solutions to problems.
“Invoice Inc.” had a small office in a bigger office complex for startups. That gave us the feeling of having a lot of coworkers, and I got to know a lot of people at the founder’s house. We all came together for summer parties, Christmas parties and we all dined together in the common cantina. This network of people and the fact that they had met me liked me and stayed in contact with me, would, later on, be a big start boost to my career.
“Invoice Inc.” was a great learning experience for me, I had a really great mentor and great “co-workers” from the other startups, but the boss at “Invoice Inc.”, an elderly woman with no technical skills, bad people skills and no management experience at all was absolutely terrible. We pretty much all hated working for her, but we liked the business itself.
She would micro-manage us, she would change stuff directly in the database without asking (and with no technical knowledge), so half our day would be filled with fire extinguishing her constant “fuck-ups”. She would change my tasks around about 5 times each day, and ask why I had not finished any of them yet, then change them around again.
I was the same age as her daughter, and she had absolutely no control over her daughter, which “technically” also worked there, but only usually stayed there for about 30 minutes, before leaving with her mom’s credit card and car to go shopping. Her daughter had absolutely no respect for her mother, and we would often, in our small 20 m2 office, have to listen to her berate her mother about it not being fair that she could not go shopping.
I didn’t really care about her daughter, cause she was never really there, but when she would leave, her mother, meaning my boss, would redirect all her anger on to me. She would berate me about everything from how I looked, how I went about solving tasks, the car I was driving, my attitude. And you have to understand that at this point I was a pretty shy software developer, so I hardly had much attitude.
I was not feeling well in this period of my life, the way she managed us, would stress us all out. My mentor was beginning to have some issues with his heart, which the doctor related to the awful boss. I myself had starting experience “pressure” on my chest, trouble sleeping, and I was feeling terrible every single day I was at work, and she was in the office.
As part of my education, we had to do an internship. As I was already employed by “Invoice Inc.”, I would have my internship at them. I already knew all of the systems, and I would be able to be more productive in my internship than my classmates, since I did not first have to learn about the company, the culture and the codebase.
And luckily for me, I was still being paid, even though we technically were not allowed to be paid for our internship. It wasn’t much, but it was an honest 18$ an hour. We kept the whole “being paid” ordeal under the table, and the school never found out. I have to credit my old boss for that, that was pretty nice of her to do.
After the internship ended, we were suppose to stay at the same company, and do our final graduation project. My boss knew of this, and had started preparing for this.
The internship is basically just an internship, you should work in the company as if you are a normal employee. But the graduation project is supposed to be yours. The company is encouraged to give you a task, that you can solve, but they have no real control over how the project is managed, designed and cannot expect the student to reserve time for any other task.
The boss at “Invoice Inc.” would completely ignore these facts, she were fully expecting me to do the daily fire fighting, implementing new features for her system while also doing my graduation project.
I was already completely stressed out because of her bad management, and her need to constantly put me down. And now she was going to affect how well my final project was going to go? That could not happen. So one morning I went to her desk and told her I quit. Since I did not really have a contract, I was free to go the same day.
My school knew I was really stressed out, so one of my professors had already prepared a new place for me to go.
My professor got me in at a company, let’s call them “Airplane Manager”, that makes Airplane maintenance software, at the Airport. When I first started here, I go the most awesome desk and view that I could ever ask for. I was sitting on top of the local airport and was looking out over the runway. And I could sit and watch as planes came in and left during the day. It was amazing.
Unfortunately, this change meant, that I got started 2 weeks later on my final project, it also meant I had to pick up Java programming again, since “Airplane Managers” newer software was written in Java.
But I also had to learn another language called JPL. Yeah, I had not heard of it either. It is a very old language, that got a bit of traction before Java. The big thing was that it was platform independent, just like Java is.
JPL is an interpreted language with a C-like syntax. Because you can write and edit JPL code within the editor, you can write and execute procedures without interrupting your development workflow. You can also write JPL procedures directly to a library and call them via event-type properties provided in the Properties window for screens and widgets. Use JPL for rapid prototyping and later rewrite the procedures in C. Or leave the code unchanged; JPL can get most jobs done quickly and efficiently.Chapter 19. Programming in JPL
Since it was a language that was old, not very popular and hardly anyone outside “Airplane Manager” knew about it, it had ZERO documentation, so I had to ask A LOT of questions. But they mostly used JPL as part of the old codebase, to start up views in Java.
If I were to have a successful graduation project, I had to learn fast, and I had to be focused. During the 3 months at “Airplane Manager”, I kicked ass! And I finally came through at the last minute before the project deadline. I delivered my product, my report and hoped for the best.
When the exam time came around, I had watched a lot about how Steve Jobs did presentations. Our exam was pretty most a sales pitch of the software we had built, how it was the greatest ever and all the features it had. I had obsessed over this presentation for 2 weeks. Constantly rehearsing it. And I even bought a clicker.
I completely nailed the exam, they were blown away by my energy and the way I presented the solution I had made, which was a reporting tool for upper management, that could print out, email out and show a dashboard of KPI (Key performance indexes) reports of the airplanes management pipeline.
Unfortunately, the report was not that great. It was obvious that I had been stressed while writing it, so that pulled my grade a bit down, but I managed to come out with a B+, which I was totally happy about considering all the issues, challenges and headwind I had to deal with.
It was December 2012, and I was still working on my final project, but I started to get scared about what would happen after school ended and we had to get real jobs. I was really afraid of being unemployed. I had a LinkedIn page but did not know much about it. But my logic was that I might not be any better than my classmates, but I could at least be more visible.
So I updated my LinkedIn page, and I started writing about my project, and that I was soon to start searching for jobs. None of my classmates had even started considering jobs yet, and none of them had LinkedIn pages. I wasn’t sure if I was right about if LinkedIn could help or not, but it was free and it was easy to do. I’ve always considered myself as a business or a product, and both needs marketing to be sold. I am a good that needs to be sold, and if no one has heard of me, there is no chance for me actually being “bought”.
It worked! A small local company called me within a day, they were from the Founder’s House that I had just left a few months earlier. They told me that they were very interested, and they had apparently talked to my old mentor, who had praised me highly.
It was a very small company, let’s call them “MusicAdmin Inc.”, they were two guys who had started a business making an Administration system for music and cultural schools in Denmark, it was a SaaS built on ASP.NET which was perfect for me since I loved working with Web technologies. I would be their first employee, and when I went to meet them, they had not even gotten an office yet. The company was started by two guys, one self-taught software developer and a music teacher, who had experience in running a music school.
We wrote back and forth a few times, and in the meantime I had been headhunted for a few other positions at some large corporations. So I was in doubt about what to choose.
My biggest dream was to someday have my own business, and my ego compels me to create things that have big impact on what I am working on, so I decided that the smaller company was a chance for me to learn how to build a company from scratch, and also have a huge say in how the business would evolve.
I signed the contract and agreed to start March 2013, after I finished school. But it struck me as odd that I should start in march, and not February when I was actually available. But my new bosses, told me: “Honestly, we only have money to hire you for 9 months, that’s it, but we hope we get more next year!”.
Starting at “MusicAdmin”
A few days before I started, “MusicAdmin” had gotten its first real office in the Founders House. Previously they had rented a part of an office with a friend in the Founders House or just simply worked from home. It was cool because it felt like I was part of a revolution, we were gonna build this thing. But I did not truly join at the start, I joined when the company started getting some traction. The company had actually Sizzled and slowly grown over the past 5 years. The two bosses K and T had never really thought it would amount to more than a hobby project. But slowly they were winning over people from the competitor.
When I joined they already had about 50 schools in Denmark, and was just starting to get into Norway.
For my first day, I got an introduction to everything, and the codebase. And the codebase looked so simple. There were really only 10 class files in the Business Logic project, but to my horror when we opened them up, there were THOUSANDS of lines in these 10 files. And the entire codebase was complete spaghetti code, the codebase was written in an English/Danish combination so it was really weird to read. There was not a single test, and the “source control system” was… Dropbox.
At this time, I started to panic a bit. Had I made the wrong choice? Was this a joke?
Passwords were stored in plaintext, and it was even made so the teachers could see the students passwords, and the Administration in the music school could see the teachers passwords as well. The database looked alright from the get-go, but I soon realized that most data extraction happened through views, and stored procedures which also contained hundreds of lines. One SQL view, in particular, joined over 54 tables just to figure out if another student had a booking at a selected time.
To be fair, it was “kind of” a startup, and it was built in K’s spare time, and for the last few months, they had been so busy developing the features the customers demanded, that K had just slammed out code as fast as he could. He was having real trouble keeping up with his full-time job, family and now also this hobby business. That’s why they hired me, they could not keep up with the speed they needed to implement features at.
And yes you read that correctly, both of my two new bosses were not full-time. I was the only full-time in the company. And when my new bosses were actually at work, they were usually out selling the software in Denmark and Norway. So for the first many months, I was alone a lot.
I quickly realized that I was not in a mentor-ship any more, if I was going to make this work, I had to study and I had to study hard. I was now responsible for my own learning, and that I probably, in the long run, would have to take over designing the architecture of the system.
Even though I hated how the codebased looked, I often credit this chaos to why I become such a successful programmer. It taught me to take full responsibility of my learning, and it allowed me to experiment a lot, and learn from my thousands of mistakes.
I don’t want it to sound like I was a godsend, or a superstar developer. I was just a junior developer, who basically had gotten completely free reigns to do “almost” what I wanted. So I made it a lot worse, before I made it better. It was a process over the next, almost 5 years.
One great decision, I trumped through was that we should develop the application as an ASP.NET MVC site going forward. And most importantly, I introduced a real source control system. I had asked for Git, but my boss insisted we used TFS, and this was before Git became a part of VSTS or “Azure Devops” as it is called today.
My two new bosses, had no management experience at all. They were just two regular guys, a programmer and a drumming teacher, that wanted to build a company.
For the first many months, they would nitpick over tiny details, such as whether I came on time 8:00 or 8:05. They would constantly check up on what I was doing, whether I delivered the “full-time” hours I was supposed to and you had this real feeling that they were afraid that I would steal their hard earned money.
This combined with the fact that I had not gotten the pension plan they had promised, and they had changed my salary to 500$ a month LESS than what we agreed verbally at the job meeting, this led us to have a really strained relationship for the first year.
It was a “startup”, so there were no real plans, just fight the fires everyday and try to implement new features. We had no sprint, no backlog, no planning at all.
And half my day I spent as a supporter as well, since I was the online full-time guy on the job.
I thought about quitting almost daily, because of the downsides to the job, and the fact that I was not being paid what we had agreed on. But I felt if I quit and changed jobs, I would not have as much freedom as I had at “MusicAdmin”. Because I could develop features the way I wanted to, I could experiment, I did not have any deadlines, and I had full say over the architecture on the stuff I made.
We had also talked about a possible partnership, which I thought would be coming at some point when the company grew larger. Spoiler, it never happened.
We are sinking!
In the first year after I joined, we had massive success in Denmark and Norway, and we could not keep up with the demand from the customers. We had new schools put on waiting list to become customers. We had over 200 daily unanswered support emails, we were literally drowning.
My bosses K and T had joined the company full-time, but it was not enough. We needed a new guy!
So my bosses hired an old colleague of T, also a drumming teacher. He was put in charge of support and sales, and he completely saved our asses by introducing a ticketing system for our support emails. He also took over half of the sales meetings, that made the stress bearable.
qubis was born. My new company!
I was starting to get really pissed off by the fact that we were always behind, we only fixed issues after they occurred, not when we found them. My boss K did not set any standard for code quality, if it worked, it shipped. And I was constantly busy fixing his bugs, and doing firefighting because the system was so unstable.
Suddenly, my father-in-law had an idea for a business. He wanted a fitness club, that wasn’t staffed. It should be a small fitness room, with a chip key lock on the door. And you should be able to book a time slot for your training, where you would be absolutely left to yourself and could train in peace.
I was fed up with the poor quality of work we produced at “MusicAdmin”, so I was going to do my own project perfectly. I had always dreamed of one day having my own business, and this was my opportunity to have just that!
I had a talk with my bosses, I told them I would be starting my own business, and I would only work on it in my spare time. If it ever succeeded, then I would of course quit and go full-time in my company just as they did. They had total respect of my decision, and could only see benefits in me trying to start something new, and try new technologies. I always thought that was really cool of them to say.
qubis was now born, and I would start the work with my father-in-law. We had set up a model, where he would pay a sum to get the software developed, but I would keep all the rights to the software and could license it to other companies as well.
The company was growing, we already had a few supporters by now, and I was completely off the day-to-day support stuff, except for major technical issues, basically when bugs occured (which was a daily occurence).
But we were starting to have an increase of larger projects. Must of the small features that were needed day to day, were starting to be done. It was the big stuff that the customers were calling for.
I still functioned mostly as the main developer, while my boss K, did sporadically write code as well, but they were usually smaller features or support of some of his older modules.
Most of the salary issues had been solved, they got a pension plan sorted and I had over the 2’ish years been increased about $1.200 a month, including the pension plan. I had an okay yearly salary of $60K. It was higher than most of my classmates.
Our second developer
Our projects were getting bigger and bigger. We were doing big integrations, I had done two major projects.
- Angular Signup form
- A polymorphic signup form for the students, where the school could design it themselves.
- National Identity Providers – SAML2.0
- I had implemented the SAML2.0 authentication and authorization protocol for use with the Norwegian Feide and ID Porten, and the Swedish BankID.
I had also fixed all the issues with passwords being cleartext. They were now properly hashed, and could not be retrieved. I had also changed our “Forgot Password” functionality to be a “Reset functionality” with a one time use 5 day reset link.
But when I was doing major projects, there would be no progress on other features. We were starting to see a major bottleneck on my table. So my bosses starting a hiring process, and after a few months and a lot of candidates, they hired a new guy. He was a senior developer, and had over 10 years experience.
I was intimidated. I knew the codebase was a mess, and I had made a lot of mistakes as well, that I had learned from. I was afraid this guy would come in and show us what a “real” developers looked like. My “imposter syndrome” went crazy! I didn’t want him to come in and judge us.
Our new developer P joined and was a laidback type. I was charged with getting him started and teaching him the system. He was given very simple tasks. And I soon realized that I was not that “junior” anymore, not if he was a senior.
After a few months, he was actually fired because he could not produce anything. I was sad to see him go, but I understood the decision. And I think this was the first time I started thinking about what bullshit titles really are. They say nothing about the persons skills at all.
I had always felt experience, measured in years are meaningless.
My bosses started respecting me a lot more after that, they realized that good developers were hard to come by.
It would be some time before we started hiring again, but eventually we did get 2 great new guys.
qubooking got killed
qubooking was the name given to the project I had with my father-in-law, it was a play on qubis and that it was a booking system.
I spent every waking hour developing software for about a year after I started qubis. My approach, that everything should be perfect was killing my speed. And I soon learned that shipped is better than perfect. My father-in-law, who is a very demanding person, was driving me insane with the scope creep of the system we were building, and I hated every single moment working on that project.
I had no passion for the idea he had, the project was growing in size every minute I worked on it, and I was starting to be very stressed. In this period, my life quality sucked, I wasn’t happy, I was always irritable, didn’t get any sleep, came to work way too late.
My father-in-law started to change priorities because of situations in his business and the project slowly decayed into me not working on it at all, but being stressed about it every single day. When we had family meeting, we could have been in an email war few minutes before we met, and we had to put that aside when being at family gatherings.
There were no truly hard feelings, but the situation became tense.
After I got a pay raise from “MusicAdmin” I realized just how stressed I had been. I hadn’t had any fun in a year. I had no free time, and I was working on a project I hoped would fail. So one day I called my father-in-law, and told him end-to-end how bad it was, and I was about to go down with stress. He completely understood and we killed the project.
I kept the company open, because I knew I wanted to do something with it some day, but for now I had to relax.
The coming months, I felt great and I felt free.
The project had learned me a lot of lessons, and a lot of the code I had written, was introduced into “MusicAdmin” at various stages.
After this project, I had learned:
- Passion is everything in business.
- If you are not passionate about what you are building it will fail because you won’t have the mental power to go through the hardship.
- Shipped is better than perfect
- I learned that great design coupled with being pragmatic, is the right approach, especially when you are trying to build a new business. Speed is everything. And if the system doesn’t scale because you are gaining customers, that is a luxury problem that can be fixed later.
- Create software for today, not for the epic scale you dream of having in the future
- I completely over-engineered the solution, and the levels you had to go through because the abstraction and polymorphism were killing my development speed. I had made it way too complicated!
- I learned how the basic stuff in a company works. Tax, Vat, bookkeeping, etc.
qubooking helped me change some of my perspective of the things I hated at “MusicAdmin”, I got more respect for what my boss had built. Although I still don’t agree with the lack of quality that was the norm until the day I quit.
But I understood some of the pragmatism, that had made the business possible. Had he not created all those features that fast, there might never have been a job for me to be angry about.
I have a big ego, and when I was a junior developer, I thought I knew everything. My boss and I would often get into arguments, and thinking back I remember how frustrated he looked sometimes because I was so opinionated and assertive. The qubooking project, changed my perspective a lot. I became a lot more humble and forgiving in some areas.
At this point, I had also realized that any interaction with another person, is kind of similar to a sales pitch. So I had picked up a few books on self-improvement. Eg. How to Win Friends & Influence People which helped me understand that my way of conveying my opinion to people, could be considered a tiny bit hostile.
I have always been very passionate about programming, so I can get quite riled up, sometime around this period, I changed to be more humble, forgiving and listen more. It was so dramatic, that my bosses actually called me into a meeting, talking about how great they thought I had become. They wondered what had happened.
I think the big differences they really saw, was that I was less stressed after I killed qubooking. But I certainly did improve the way I cooperated with my colleagues.
I became a teacher at the local academy
In the summer of 2015, I was called by one of my old teachers from the academy. They had fired a teacher, and needed someone to replace him. They immediately thought of me, and wanted to know if I could teach the students programming for 8 hours each week. I was completely caught off guard, and was very flattered that they were considering me.
I had previously had a few talks at the school about my career, trying to infuse some motivation in the students about what was waiting for them “out there”, and how to land a job as fast as I had.
I took a meeting with them, and I had to decline because the 8 hours were simply too much for my fulltime job to handle. They had another programming teaching job available as well and begged me to take it, so we agreed that I could work as a teacher no more than 4 hours per week, as that was all my bosses would allow. I also told them, I could only do one semester, to help them, but they would need to find someone else.
I was then hired to teach the 3rd-semester Multimedia design students, in the Interaction Development class. Which basically means programming websites, that you can interact with.
It was really cool, that my bosses allowed me this opportunity, as it was a really fun temporary job to have, and I got a lot of joy out of teaching my class.
I taught the class:
- ASP.NET Webforms
- General Web development and strategies.
- Database Integration
During my studies, I had been hired as an assistent teacher, and had also mentored a few people. But teaching a whole class by myself, felt really great. And overall I think I did a pretty good job. And still have contact with some of my students.
Around 2016, we were around 7-8 people and we needed to expand, so my bosses rented a newly built office and we moved into a much bigger space. Unfortunately leaving the Founders House behind.
At this point, we were 4 developers, and my boss had started to slow down his direct involvement in the code and had ascended to feature management. I had indirectly been assigned to assist the other developers in their coding, I was also involved in and designed all major architecture changes and additions.
Although the title was never given to me, I became the lead developer and system architect. It was not something I pushed on any of the team members, but they respected my ideas and experience a lot, and I would often have a final say in most major decisions.
“MusicAdmin” had and still has a flat organizational structure. There are the employees and the two bosses. But an implicit hierarchy kind of emerged based on experience and seniority.
When K left most of the responsibility to me, we started to pick up speed real fast. And in the last 1½ years I was there, we got a lot done.
Even though I had the respect of my coworkers, and sat in a “powerful” position. I was still constantly faced with inadequacy, poor quality, and no real vision for the company. I felt they had started to become greedy. We had to turn out so many poorly thought out features, so they could move into new countries. We were starting to have a queue of new customers again, and we never had a chance to give them a proper experience.
A different big company in my area had called me up, and offered me a job. It was the perfect timing for them, cause I thought about leaving every single day I was there.
I joined the job meeting, and they wanted me in a manager position, where I would be responsible for a big team, and a great product. Unfortunately, they insulted me greatly with the salary offered. They said it was just the starting salary and I could grow it a lot within a short time. But I didn’t care, they offered me almost $10K less per year than my current position.
But I was so tired of being at my current job, that I called my bosses in to a meeting, and told them I had an offered I could not resist, so I was probably quitting today. They then asked whether it was the work, or the pay that was luring me. I lied, and said that it was the pay.
I told them they had offered me $77K per year, meaning a $17K increase. My bosses agreed to the salary within a few moments, and that made me stay. This was 8 months before my final day at “MusicAdmin”.
A month after my increase, I found the salary sheet of the company lying on our shared dropbox. And I saw what everyone else in the company made…
And I realized, that even though I had seniority, I was the one with the most responsibility, and the one who put most hours in, I was far from the top paid developer. So I called my bosses in and wanted an explanation for why I was so low in salary compared to my coworkers, and why I had been underpaid for so long.
They told me that the other people were older, and I called bullshit, that doesn’t make you more valuable. Then they just said that the other guys were more expensive. Then I told them, that I am more expensive then. But they dismissed it.
This was February 2017, and that was the day they lost me. I would still work there for a few more months, but I was OPEN to new possibilities. And I stopped caring too much about my work.
Consultancy side gig
As fate would have it, a month later, I got a call from a consultancy house, and I almost just hung up, since I thought it was someone trying to sell me something (it happens a lot when you have a company).
It was a guy from the consultancy I work for now, that called to ask me if I was an expert in Redis Cache. And I said sure. He said he really needed me for one of his customers and I agreed to come to a meeting, to see how I could help. My bosses agreed that it was okay, but they did not seem that fond of the idea this time. I think they knew that they were going to lose me soon.
I was immediately hired as a Freelance consultant through my own company, with the consultancy being a middle man. Which means I was hired by the consultancy to represent them when dealing with this customer.
Within a months time, I had solved the customers performance issues regarding redis, and they were really happy.
I had certainly enjoyed that I was earning 3 times as much per hour as a consultant, that I was shown great respect and considered an expert in my field when working through the consultancy house.
The consultancy house asked me to do another task for a big company here in Denmark, called Danfoss. And I could not pass that opportunity. That is definitely the kind of company you want on your resume. I was soon hired in for a 3 months freelance contract at Danfoss to work on a classified project.
The only requirement was that I was onsite every Friday. My bosses, did not like that, but they did not have much choice, as I was insisting they let me do this.
I quickly found myself in a position where I was happy to come to work at Danfoss everyday. My tasks were challenging and meaningful, I did not have to constantly fight off bad practices and stupid decisions. I did not have to do menial work, and I had almost complete freedom to work where ever I wanted.
I realized that I had started earning a lot more from the consultancy gig than from my full-time job.
So I called up the consultancy house, and said, whatup… Can this become full time for me? The consultancy house, were so happy they arranged a meeting immediatly and we agreed that I should join as freelance but full time.
It was going to be a leap of faith. I was done, I hated my current job. But I was really scared, I had not spent a penny of the money I earned from consulting up till this point, and had saved a few months worth of salary up, but I demanded that the consultancy house find me something to do when I quit, they said they would do their best.
It was the 5th of July, and today I was going to quit. In Denmark, you have the running month + till the end of next month for a resignation, so that meant I would have my last day the 31st august. I wanted to be fair. I could have waited until the last day of July, and still gotten the same severance day.
I printed my resignation letter and called my boss into the meeting room, it was T, who managed mostly the support and sales part of the firm, but K was on vacation, and I felt I needed to get this done. So, today was the day.
We sat down, and I didn’t say much other than, “I’m sorry, I have to quit today.”. He was taken aback, but not really surprised. Him and his partner K, had talked that it probably would happen soon. Not just because they felt I was not happy, but they knew I was talented, and other companies might soon start to recruit me with salaries they could not offer. Which is basically what happened, although it was not why I left.
I wanted to leave on good terms, so I never really told them why I quit. If they ever asked, I would probably be talking for 10 minutes.
But the short answer is, I was not happy. It was not fulfilling work, and I felt my learning had stagnated. There was no excitement, no cool things to work on, no passion and just in general a feeling of working on a cash cow.
But ultimately it was because, being a consultant made me happy again.
It’s 2019, and it is just about 2 years since I quit. And I was so afraid I remember. I was afraid to call myself an expert, I was afraid I was going to fail. I was afraid that I had to crawl back and beg for them to hire me again.
But all of those thoughts were unnecessary, because I had a gig the moment I walked out the door at “MusicAdmin”, and I have not had a single day without a contract since.
It has been the most amazing 2 years. And I have been blessed to work with so many amazingly talented people. And work on amazing products, that I truly care for and love to work on.
Looking from the outside and back in, I see so many developers afraid to take the leap of faith and believe in themselves, or to push for better positions. I could never go back to a normal job again.
I am still a consultant, but my dream is and will always be to have a real company, with employees that are happy and enjoy their work, and we make awesome products. It requires that I find and idea that I can truly believe in and be passionate about. So until then I will be a consultant and save up the extra money that I earn, so that one day I can leap into my biggest dream.
Consultancy is not for everyone, but believing in yourself and knowing your worth is!
There is no doubt that you need to be skilled in your area, to be a consultant. People are paying a lot of money for your help, so it better be good. But the bar is alot lower than the critique you have for yourself.
I think my path to consultancy, can be credited to all the chaos at “MusicAdmin”. I had to be self-reliant and independent. I Had to take responsibility for my own learning. I obsessed about code in my free time, and I truly believe that you can’t avoid becoming a great developer if you are so passionate about it that you spend your free time programming as well.
I got to make a lot of mistakes at “MusicAdmin”, and I have written my fair share of shitty code, that someone has to maintain now (sorry). But I am also proud to say that most of my architecture still stands and are heavily used a the company still. A lot of the ideas I had for future improvements have been implemented in the way I suggested (yes, I still keep an eye on their progress).
But my road to becoming a consultant was an accident, just as well as it was a coincidence that I got headhunted by “MusicAdmin”.
Even through all the bad feelings, and hardship, I am grateful for the opportunity to have worked the places I have, and the opportunities granted to me. Because they are what have shaped me to become more successful than I ever dreamed of.
I am motivated and energized more than ever. And to be honest, also quite proud of my accomplishments, especially those that required confidence and listening to my gut.
Thanks for reading this far. I hope you enjoyed the story of my career so far.
I wish you the best of luck in yours!