TLDR: Do you learn in your free time or just whatever you pick up at work, what do you learn (programming as practice or theory, system design, etc.) and how do you learn it (projects, tutorials, etc.) in order to progress in your career?
--
A year ago I finished my Master's degree in Computer Science and got a job at a smaller company where I work as a programmer (full stack).
Before I got the job I went through Udemy courses and various tutorials, read blogs and similar stuff about Javascript, Typescript, ReactJS, NextJS, NodeJS, etc., and through university I learned about data structures and algorithms (leetcode), system design (e.g. Designing Data Intensive Applications and going through the islands, etc.). Basically, I have a solid foundation and I'm interested in everything and actively follow what's happening, but I'm far from something you would call a programmer (lack of practice that I'll never get?).
Today, I do all the work I get with the help of AI (mostly Codex + Claude) and I literally write little to no code (and I didn't really write much code before either, but I do have some small projects).
So my main focus is to define the problem and smartly design the solution (with suggestions from AI) and let AI do the work?
So I work as a "programmer", but I don't know how to write code, but I know how to understand it and recognize when something is good or bad.
--
And now I'm thinking, today I can build an application from start to finish, or basically build something that directly contributes and makes money, while 6,7 years ago I wouldn't be able to build a single feature of that product, or it would take me 3 months to do what I can do in a couple of weeks.
Meaning I would be building one application for a year or more and in the end I would have a 10x worse product than what I can build today with AI (and all of that without the practice of writing code because that's a waste of time during work).
And at first that seems pretty scary.
But then I realized that I was actually never interested in writing code, I always wanted to build something concrete and that's exactly where AI helps me, to turn my ideas into reality.
And what I see as the future, or what I should focus on in order to maximize my knowledge, as well as my income, is to build as comprehensive a picture as possible of how to take a product from zero to the end (e.g. even sales, marketing, ux/ui, product planning, frontend, backend, databases, devops, scalability, system design, designing real-time systems, etc.), basically to learn the theory really well and have a good understanding instead of spending my time learning syntax and code because with that knowledge I can actually contribute to something.
But then again, I should also focus on learning how to "actually program", and the problem with that is how do you now, when you have all these tools, go back to the stone age and manually program and spend your time reading documentation and debugging without AI and building an application from scratch?
--
My goal isn't to become the best programmer nor to be good, I want to go deep into this field, but at the same time I want to maximize my income so I can live my life, not just survive on an average or slightly above-average salary.
I'm also interested in business and would like to start something of my own in the future.