My goal for taking this course was to future-proof my career as things get more automated. They say that the pandemic pushed us 6-7 years into the future in terms of tech adoption.
I didn't want to be out of that party for long.
The students were promised to be ready for the first day on the job after this course. I believe it delivers well on this promise.
First, even in other coding languages (e.g. VBA in my work) I find myself more comfortable dealing with excel objects and methods having been introduced to their nuances in level 2 of the course. Second, aside from the programming aspect, it also delved into the fundamentals of processing data and data tables in numpy/pandas, which is almost always a demanded skill in job postings related to
python.
With its pace, its coverage, and great TA support (where else can you get a one-day, personalized feedback?), nothing can beat this course in teaching you all the fundamentals you have to know in such short span. Plus of course the time-pressure and the tuition provide good motivation to get you that certificate.
This time-pressure aspect is very real. I see some comments with people saying they'll take this in just a month or two. The second week will really bring you back to reality: the reality that this course will require your effort, and that you better be prepared to give this time every day and all of your weekend especially for OOP, the text processing project, and the final project.
Learning
python from the ground up was tough and the pace of this course was no joke. I spoke with my friends who have taken c/c++/
python and they give me a blank stare (or an emoticon rather) when I discuss dictionary comprehensions on my first day on this course. My senior from work was impressed that we were discussing OOP on level 2 when, in his experience, that was usually touched on in advanced courses. And then we even covered advanced stuff such as generators, lambda, and let's not forget that indispensable introduction to concurrency that really changed my way of thinking about things. That maybe in other languages, things can be sped up by leveraging more of your computer's hardware. This topic was especially surprising to me and to my friend who actually worked on an advanced version of this topic for his thesis (as if it was not advanced enough).
The final project is something special. You will value an ABS using tools you may have never heard of if you're not coming from a very technical background. The amazing thing about this course is that you will be trained with all of the tools you need to do so without all the complexity. And you'll also be using other functions/classes you've used in prior levels. Each project builds on the previous and if you work at it hard enough, you'll find your way to this level confident with the skills that you can implement many of the things you'll encounter in your work. The good thing is, I don't think many of the things you'll encounter in the workplace (if you won't be working in the quant area) will be as tough as ABS valuation so you may have seen the biggest monster you'll ever encounter, and to have slain this monster by completing this final project is the best confidence-booster you can get before you apply for a
Python-related job.
Let's not forget the data science portion of the course. True to the course we once again get bombarded with theory in the first level of this part (level 8), but the experience you get with these tools sets you up for the following levels in data viz and bootstrapping. I think in terms of employability, the skills you learn here will be indispensable as companies nowadays are hiring people who can manipulate/visualize data be it in SQL/R/
Python, and this course effectively teaches you how to do this in
python as there is no shortage in exercises for this part. What is also good about this part is that it is largely free-hand and you're free to make your submissions as complicated as you need it to be able to juice out all of the practice you can.
All in all, this course really was time well-spent for me before I went back to preparing for CFA Level 3. Beyond programming concepts, it taught me to see the world in a more exact way, and this for me is the most important takeaway of the course. It has taught me to see things as an object-method group, and to diagnose problems by assessing whether an object is supposed to have that method or function. I was happy that I learned to think more programmatically using a more accessible language such as
Python, and I'll be sure to take these lessons to my day-to-day responsibilities.
Thank you
@Andy Nguyen for putting this together, and thanks to
@APalley for the constructive and prompt feedback and for being very exact in defining my problems and providing solutions.
5/5.