On Becoming a Software Engineer: Progress comes to the Persistent
I haven’t wrote here in a while, so here’s a quick recap of my recent adventures and works.
In August I left my family, friends, work, and general past life behind to join 42 coding university in Fremont, CA, and it’s been non-stop low-level C programming for the past 4 months. Founded by donations from Xavier Niel, the French billionaire, tech guru, founder of Illiad telecom, and massive tech philanthropist, 42 is completely free, peer-based, and project-based. It is NOT a 3-month coding bootcamp, although my time here has been very intense. It’s a program that is intended to last 2–5 years to complete every module, based on your ability, drive, and other time commitments. It’s also not required that you finish the program if you’re able to land a job, or start your own company. After all, the mission is to get students working. Projects start out in low level C to teach students about how computers “think” and what’s going on underneath the hood of many of our favorite high-level languages(i.e., Ruby, Python, etc.). C after all is “the godfather” of computer programming languages, around for 40+ years and still kicking. So how is 42’s program structured?
42 focuses on mastery-based-learning, as opposed to time-based-learning, what most education systems currently look like. Basically, when you have fixed time, you probably have variable outcome, and when you have variable time, you should have fixed outcomes, that is mastery. Sal from Khan Academy gave a great TED talk about it, as well as Chris Lee, whose program Launch School serves as my higher-level supplement to 42. Having gone through traditional education through college, I feel like traditional schools can definitely learn from mastery-based-learning and at least implement certain features. With 42, you must defend your projects amongst your peers and an automated grading system, while Launch School also requires that you share your code for review with peers and TAs, and pass live technical assessments(often performed by founder Chris Lee) to progress in the program. I definitely feel like the combination of the two will get me launched into a career as a Software Engineer. Then, it’s up to me to continue to learn on the job, and study as much as possible in my free time to continue to build depth in computer programming and science topics.
So given my participation in these programs, and the fact that I’ve been programming at least 30–40(often 50–80) hours a week since March 2016(the first time I wrote my first line of code, my first “Hello World”), where has all this got me? I have a data visualization and forecasting side-project with my former company in New York. And after the holidays, I have a couple of technical interviews for developer internships this summer in the Bay Area. That will be my focus for the next couple weeks/months, which essentially boils down to being a little bit better programmer, collaborate, and person each day.