We asked some of our software engineering alumni to share their learning journey going through our bootcamp and their experience since graduating.
We’re catching up with Hack Reactor alum Dan Thareja, who graduated from Hack Reactor San Francisco in 2014 and currently works as a self-employed Full Stack Web Developer. Below, we asked Dan a few questions about his experience at Hack Reactor and what he’s been up to since graduating.
What was your background before you came to Hack Reactor, and what inspired you to learn to code?
Before Hack Reactor, I was a student. In 2014, I had just graduated from Lehigh University, and for the first time ever I had no more life road map. I was empowered by the freedom of choice; I could do anything! But with so many options, I was also a bit paralyzed. My Finance degree suggested I should be a consultant or investment banker, but I didn’t particularly enjoy that work, so I started looking elsewhere.
I thought long and hard about all of the classes I have taken in my life and which ones I liked the best. After mapping it out, I was surprised to find that coding was a common theme across these classes. In college, I enjoyed my finance classes not because of maximizing profits, but because of Microsoft Excel. I used to love writing complicated formulas, pivot tables, and even little Visual Basic scripts to automate my homework. In high school, my favorite class was Intro to Visual Basic, which I only thought of as a throwaway elective at the time. Even in middle school, I used to love “coding” animation steps in PowerPoint to make my bullet points zoom in, spin around, and fade out letter by letter.
Once I put together that coding was really the thing I had enjoyed, it was time to find how to turn that enjoyment into a career. I had a friend who told me about Hack Reactor, and the rest is history.
In addition to Hack Reactor, you earned a Bachelor’s degree and a Master’s degree from Lehigh University. How have multiple education sources benefitted you, and what inspires you to keep learning?
Much of my happiness in life comes from being able to learn, grow, and contribute, so learning is less of an inspired action and more of a basic requirement. I like to compare strategies across different education sources to learn how I learn best and pursue those programs that resonate with me the most.
Hack Reactor’s immersion program was by far the most effective model for me thus far. People are often surprised when I tell them that I learned more in three months at Hack Reactor than I did in five years at Lehigh. My time in college helped in many other ways to become an adult that I wouldn’t trade for anything, but Hack Reactor prepared me for the workforce in a way that college never did.
After being a student, you became a Teaching Assistant and a Graduate Advisor at Lehigh University and a Curriculum Engineer at Hack Reactor. What is the dynamic like going from student to teacher? And what is your favorite aspect of instruction or writing curriculum?
As a life-long learner, I’ve always loved teaching. The only thing better than realizing the “aha” lightbulb moment yourself, is carefully guiding someone else towards that moment.
I think there’s a lot of benefit from teaching something right after you’ve learned it yourself. In the fall of my Sophomore year at Lehigh, I took an Intro to Finance class that was usually reserved for Juniors and Seniors. By the spring, I was tutoring it. I wasn’t an expert in Finance, but since the class was so fresh in my mind, I remembered the sticky points and spent enough time on them. Additionally, teaching others solidified my own understanding of these basic principles which helped me excel in more advanced finance classes.
It was a similar story at Hack Reactor. I had just finished a three-month technical residency after the immersive program (then called Hacker-in-Residence) and loved it so much that I transitioned into a full-time Curriculum Engineer.
My favorite part of writing any curriculum is being so in-tune with the student’s mental model that you can anticipate the questions before they come up. It’s pretty fun writing an intentionally incomplete explanation, designed to have a student ask “but what about X?”, and then have the answer ready on the very next slide.
Since graduating, you have been self-employed for almost four years. What freedoms come with self-employment, and what are some of the challenges?
My favorite freedom of self-employment, by far, is location independence. Over the past four years, I’ve spent time living and working out of friends’ houses, ski resorts, beaches, and numerous cities both in the US and overseas. This kind of flexibility is so valuable to me, but it is certainly not without its challenges.
One major challenge of self-employment work is the variable income. There will be times of feast and times of famine. You have to be prepared for the hard times, especially when you’re building your client base in the beginning. I prepared for this by saving some extra money for the hard months.
Another notable challenge is the self-discipline required for this kind of work. There’s no-one to tell you what to do on any given day, and it can be easy to fall into bad habits. Having some sort of routine helps keep this in check.
If you’re curious about self-employment and you’ve been lucky enough to work from home during these hard times, a good litmus test would be to reflect on how your work from home experience has been.
What advice would you give to someone interested in learning Javascript or becoming a Web Developer?
Learning web development today is hard. It’s intimidating how many frameworks and tools are out there, and choice paralysis can be a real blocker to making progress.
My advice is to focus on the basics and master the foundational pillars of HTML, CSS, and vanilla JS before introducing these higher-level tools. Starting with these fundamentals will avoid choice paralysis and will provide a foundation to let you transition between any of the tools out there today or tomorrow.
Also, remember that real learning comes from writing code. It’s not enough to read code on slides or watch someone else code on YouTube; you have to do it yourself. Don’t get in your head about whether it’s perfect or not. There’s no such thing as “perfect;” just write.