ย
CloudSoftwareArchitecture #Microservices #SelfStudy #CareerDevelopment
Hey everyone! ๐ I’ve been exploring the world of enterprise projects lately and I’m curious about whether one can learn about cloud software architecture and microservices on their own ๐ค. Here’s my thought process:
So far, I’ve been self-taught in frontend and game development, and I’ve been doing pretty well in my career. But now, I’m looking to level up and tackle more complex projects. I’m wondering if I need to network with people at work or if I can go the self-study route.
Here are a few points to consider:
- Pros of self-study: Flexible learning schedule, no need to rely on others, can dive deep into specific areas
- Cons of self-study: Limited access to real-world projects, potential gaps in knowledge without guidance
- Possible solution: A combination of self-study and networking can be beneficial. Join online communities, attend virtual conferences, and seek mentorship to supplement your self-learning journey.
What do you think? Have you tried learning about cloud software architecture and microservices on your own? Share your thoughts and tips below! ๐ #CareerDevelopment #TechSkills #CommunityLearning
Learn the cloud software architecture and microservices on your own? Sure?
What are you looking to do?
Is it a job at an enterprise software engineering company? Is it to learn the tech used in enterprise software engineering?
Vary biased, personal, anecdotal opinion but…
I honestly don’t know how people can learn microservices on their own. You can read up on architecture design principles, watch talks, etc, but I personally don’t think that’s enough. My opinion is one of a dev that learned microservices *through work*. I got brought on a as a Sr. who only worked on monoliths, and I learned proper microservice architecture by inheriting a fairly vast, proprietary codebase architected as such. Most non-enterprise, open “examples” I’ve seen of microservice architecture are just barebones loggers communicating via some message queue running in docker containers. Yeah, they technically *are* microservices, but it’s so shallow of an explanation on something so complex that’s it’s barely useful. I’m privileged to have learned on a company’s dime paying for kubernetes clusters via cloud services, very well configured kafka instances, and proper service separation and decoupling with extremely minimal bounded context, all under a half-decent principal engineer who helps me understand things I can’t. Maybe I’m just a shit dev, and others are better at figuring things out from barebones-building, but I would NEVER be able to learn microservices without the actual hands-on experience I received.
“Can”? “Feasible”? Yes…. Sorta.
The kind of problems that microservices and distributed systems solve are not the kind you’ll encounter as an individual learner working on educational projects, _buuuuut_ the same could be said of design patterns, clean coding, and to an extent testing.
You could probably manufacture a toy environment with artificial system failure and write some contrived app to try out the concepts on your own. But, it would be really hard to fully appreciate what you’re doing in those toy scenarios.
I think there’s some value in at least trying out things like a local Kubernetes local cluster and maybe messing with something like gRPC or Agones to at least come across some of the concepts, but I’m not sure how practical it would be to try to learn these issues of scale unless you’re actually putting out something at scale.
That said, for things like orchestrating game servers, you can probably learn quite a lot from spinning up one of those contrived toy learning game services and just having you and a few friends launch a dozen or so clients each to test out some of those ideas.
Absolutely, itโs feasible! With the right resources and dedication, you can master cloud architecture and microservices. Utilize online courses, books, and practical projects. Networking helps but isn’t mandatory for learning; however, connecting with professionals could provide valuable insights and opportunities. Keep pushing your boundaries. Youโve got this!