Aljosha Novakovic (Yosh) is a full-stack engineer at IBM with a background not in computer science, but in psychology! For the past 3 years, he’s been teaching our Coding course and seeing others like him flourish into web developers or PMs with a technical understanding. We sat down with him for a quick chat to get to know his story – read on below & find out more about all our courses here.
What is your educational background in?
Yosh: It’s funny, I actually studied psychology – got my undergrad degree from UCSB in 2012. It’s not what you would necessarily expect from a software engineer, but all things considered, I’m still glad I made that move. The psychology studies give me a strong foundation in something that is in many ways on the opposite side of the spectrum. They balance each other out and give me more well-roundedness.
Do you feel this background helps you help future web developers?
Yosh: I do think that my atypical journey to being a software engineer helps in the way I teach future developers because I remember how it was when I was first making the switch to coding. It’s not easy in the early stages, sometimes it’s the details and nuances of programming that add up and feel overwhelming for someone who is just learning. The problem is that very experienced programmers sometimes overlook these “details” because it comes as second nature to them, especially if they have been coding since they were a child.
How did you end up teaching at Product School? What was your journey?
Yosh: I had a couple connections to the Product School team – I knew about Carlos (CEO) through a program we both participated in several years back, Startup Chile (for different startups though). Then it was my good friend Jake who made the introduction to Carlos and we all decided it was a good fit.
Do you feel students without a formal technology background can succeed at Product School?
Yosh: Yes of course. There are plenty of product managers and even software engineers at the world’s top companies who don’t have “formal technology” backgrounds and oftentimes they are the best performers.
What qualities do you find make up the most ideal student for Product School?
Yosh: Personal interest and curiosity for coding. Also, there needs to be some sort of “inner drive” to take the course in the first place. It could be anything from simply gaining more respect from the coders that the product manager leads, to pursuing a full transition into a software engineer role… or even just gaining the knowledge to be able to launch a side project.
What do you consider the strongest parts of the Product School curriculum?
Yosh: It is very practical. They intensively study what employers are looking for, both in interviews and on the job. Traditional universities do the opposite, they teach different subjects, but do not go above and beyond in preparing you and making you desirable by employers.
How many students have you seen graduate the program?
Yosh: I have instructed 3 coding bootcamps and seen about 25 students graduate.
What is your favorite success story?
Yosh: One of my students from a couple years ago ended up continuing to pursue coding since graduating the Product School course. He’s now working as a software engineer. It is crazy to see how he went from learning the basics of HTML to developing fullstack applications and working for a bay area company. That’s really rewarding for me also, even if I only helped with the initial steps.
Do you have any advice for future students?
Yosh: Be persistent and always do some extra coding when you get home. The course is really what you make of it. If you are constantly a step behind and barely keeping up you might find yourself in a state of constant “code copying” where you are struggling even just to type the current code, completely losing focus on the logical component. When you do work outside of class, you can come back into next class with questions that can be answered and with a better understanding of how all the different class lectures tie in with one another.
Do you have any advice for students who have already graduated?
Yosh: I think my advice would really depend on what the student has decided to pursue. If they have decided to make a career switch into programming, then they need to go all in. The switch is possible, but not easy. With enough determination, anyone can do it, but anything under 100% commitment just won’t cut it. As for the majority of other students, who graduated, but have other career goals, such as continuing to progress as a product manager, my advice would be to not lose the “technical” touch. Stay curious. Get into highly technical conversations with your software engineers. Ask for them to add your Github username to the code repo. Look at the pull requests they submit, can you get the gist of what each pull request is improving in your current code base?