I’m a self-taught web coder and have made some small CRUD systems for very targeted tiny clients during my professional life. I have also made a few hobby sites for fun just for myself.
I’d like to expand my skill set but I have trouble visualizing all the moving parts of a “big” web app and all the tools that go into it—when people talk about containers, or testing, or deploying such-and-such, I don’t have a clue. With HTML/CSS/JS, I can spin up a little demo to play around and learn on another personal/toy project, but how do I, as a solo person, learn about larger-scale technologies?
I’m a visual artist and print-based technician so front-end would probably be the place to focus. Is there a recommended path for going from hobby projects & small sites to larger-scale best practices in React/another important platform?
1. Learn React and Typescript. React has taken root in the enterprise and it seems to be the frontend equivalent of Java.
2. Learn about CI/CD: Github Actions is a good starting place. If you're hosting your projects in something like Vercel, try running separate staging and production environments.
3. Look at popular open source frontend projects. The newly released Supabase dashboard[0] seems to be a pretty good starting point to figure out modern best practices. Excalidraw is another[1].
4. Frontend masters has some pretty good courses regarding React and enterprise Typescript. Would give those a try (the price is $39/month).
5. Where I'm from (Finland) Spring Boot (Java/Kotlin) seems to be the most popular backend framework. Node and Python frameworks share the second place. If you want to learn backend, I'd suggest picking one of those three. Rails if you really want to.
6. At some point you'll probably want to work with AWS. If React is the Java of the frontend then AWS is the Java of infrastructure.
7. It's never a bad idea to know SQL.
[0]: https://github.com/supabase/supabase/tree/master/studio
[1]: https://github.com/excalidraw/excalidraw