"The heights by great men reached and kept, were NOT attained by sudden flight. But they, while their companions slept, were toiling upwards through the nights."
--- Henry Wadson Longfellow
When I graduated college in May of 2016, I set two goals for myself:
- Study to become a software engineer.
- Start creating online content
However, I quickly found out that these two things were going to be the hardest things I've ever done.
Becoming a Software Engineer
Software engineering is challenging field to get into. It's a field that's constantly evolving and takes a strong mind capable of constantly learning new things.
Coming from a background in web development, some of the basic ideas were pretty familiar. Some of these things include:
- Object-Oriented Programming
- Fundamental programming concepts (if/else statements, for and while loops, functions, basic recursion)
- An understanding of the HTTP lifecycle
While these things are very practical, it is not what you come across in the standard coding interview. You will need to study extensive topics such as:
- Data Structures (arrays, linked lists, hash tables, trees, heaps, stacks, queues)
- Algorithms (depth-first search, breadth-first search, backtracking, the long list of sorting algorithms)
- Time and Space Complexity (If you had to insert one item into a hash table with 1,000,000 entries, how long would it take?)
- Design Patterns (singleton, constructor, factory, module)
- System Design (describe how you would build Google Docs from a high level)
Without a strong background in computer science or extensive previous work experience, these topics can seem EXTREMELY complicated, and learning them can be even more daunting. My first thought was:
"Hmm, there must be a trick to figure out these complicated concepts, tons of people are self-taught software engineers. I'm sure somebody has a found a way on the Internet."
But alas, I couldn't find any "quick tricks". (despite my best effort.)
I felt like I wanted to give up and just stick to being a normal web developer.
After a long internal debate, I realized that nothing worth doing is ever going to be easy and that I needed to give it my all no matter how long it took.
I spent months studying documentation, participating in mock interviews, and doing small-scale coding practice, and over time I actually started getting better.
This continued to motivate me and forced me to surround myself with like-minded individuals that were doing the same thing. I found out that I was pretty good at explaining these concepts to people. With the support of some friends, I decided to start creating content focused on these confusing areas.
Creating Online Content
Putting myself in a situation to create content was much harder than I thought it would be. There are sooo many opportunities in this age to create content or provide value via the variety of platforms that are now available. There are things like:
- Starting a blog
- Starting a YouTube channel
- Doing freelance work (graphic design, writing, video editing, web design, social media marketing)
- Creating a course on something your good at
- Selling online (Etsy, Amazon FBA, Shopify, retail arbitrage, etc.)
And that's just off the top of my head. Also, with technology that's available today, it has never been easier to travel and see what the world has to offer us in scenery, culture, and community. How is one supposed to choose from this exhausting list of options?!
At the beginning of this year (2017), I had finished developing MY list of feasible ideas and went into straight up panic mode.
"Which one would be the best for me?"
"Would one lead to more opportunities than the other?"
"I suck at ____ why would I even bother doing this?"
All of these questions put me into analysis paralysis, and as a result, I didn't create anything over a few months this year. But the one thing that I realized is that I only got better when I actually started making the content.
It wasn't all of the hours I watched spending endless YouTube videos on how to optimize the little things.
It wasn't the hours spent reading the seemingly endless amount of blog posts on "how to get started."
It was the hours I spent sitting in my room GRINDING with my music blasting.
And all of that hard work reaped some awesome results this year:
- 30k+ YouTube views
- 400+ upvotes on Reddit
- Around 150 followers on Instagram and Twitter
- Several interviews at some pretty cool companies
- Opportunities for sponsorships and affiliations
I spent this year beating myself up that I didn't do enough, but looking at what I've achieved this year I realized that I've learned two important things:
- It doesn't matter how much content you create, it's all about the value.
- You are your own worst enemy.
If there was one thing that I wanted you to remember from this blog post, it's this:
Time is not your enemy, it is your friend. You have plenty of time to try all of the different things that you want to do.
But right now, you need to pick one idea and run with it. Because guess what?
Success is only a matter of execution.