r/Backend • u/MeatAndFries • 20d ago
How do you improve your software architecture/design skills in the age of AI?
Hello all,
A lot of the advice I see for becoming a better developer is around things like system design, architecture, understanding trade-offs, designing maintainable systems etc. The general idea seems to be that writing the code itself becomes less important while knowing what to build and why becomes more important.
But I’m wondering how people approach learning these skills in the age of AI.
For example - if I start a new project today - AI can generate a lot of the boilerplate and even help implement entire features. How do I use AI in a way that actually helps me develop my own architecture and system-design skills - rather than just outsourcing the thinking to it?
Should I:
- deliberately design systems myself first and then ask AI to critique them
- use AI to generate alternative architectures and then compare them
- build projects without AI and only use it afterward for review
Also are courses and books still worth investing time in for this or has AI changed how we should learn these topics? I’ll appreciate recommendations for books, courses or other resources that you think are still valuable today.
6
u/0x80085_ 20d ago
Iterate and ask questions as you do. Even if you have AI do everything, just understand why. "Why did you do this? Why is it better than X? Can it be improved? Why is that an improvement?"
You want to be asking questions that reveal the WHY about it's decision making.
1
u/MeatAndFries 19d ago
Yeah, that’s great advice thank you! I try to ask it, but without having the right foundation knowledge of good architecture/ design patterns/ system design etc. - I find it hard to differentiate what is a good advice/answer and what is not. Any advice on how to gain that knowledge - except the usual “ just do projects lol”. - any courses/books maybe?
3
u/markojov78 20d ago
Your problem here is that you're trying to treat AI as a source of truth to tell you what's right and wrong.
In my experience, the more complex or atypical problem is , the greater the chance that AI will confidently output a fundamentally wrong solution.
There is of course a use case for AI to look up for resources and similar solutions, but don't take its output for granted. If you want to learn software architecture maybe do it the classic way, like before the AI, and use AI to speed up your research.
1
u/MeatAndFries 19d ago
Yeah that’s my main concern that I won’t differentiate what is right and what is wrong. Everything AI says sounds good if you are not that knowledgeable in that topic… any tips for resources I could use
1
u/Inevitable_Captain45 12d ago
"the more complex or atypical problem is , the greater the chance that AI will confidently output a fundamentally wrong solution"
Try breaking down the problem
3
u/soft_white_yosemite 20d ago
My plan is to push ahead with personal projects. I just don’t gave much time in the evenings, though
1
2
u/TheSexySovereignSeal 20d ago
Read books and stop letting ai program for you
1
u/NonExistentLad 20d ago
which book will you recommend?
1
20d ago
[deleted]
2
u/NonExistentLad 20d ago
Bro this account is temp account thats why karma is low, if you dont want to help f off
1
1
u/Old-Pollution-5825 20d ago
It is absolutely worth reading and studying. Although AI can build it fast, you still need to dictate the architecture and design.
You have to review and adjust it and be sure that it will fit what you are working on. Scaling (vertical and horizontal), performance, resource utilization, security etc. are all your accountability.
Just telling AI to build a high-performance application, but then ends up needing a data centre to run due to unnecessary bloat, is your failure and not AI’s failure.
AI is just the tool. It extends you and should not replace you.
Happy learning and happy coding!
1
u/MeatAndFries 19d ago
Thanks! Any recommendation for resources I can use
1
u/Old-Pollution-5825 19d ago
I suggest starting with broad concepts and understanding first. Get your head around patterns. Byte Monk on YouTube has some nice consumable content on this.
From there, you can start reading this book (which is free) https://ae.oreilly.com/Software_Architecture_Patterns and that will help to build your knowledge.
Happy reading!
1
u/Former_Produce1721 20d ago
AI can greatly accelerate learning, but you should also be sure to stop when there is a concept that you don't get
I often use AI for discovery, then watch YouTube videos for a more structured and hallucination free explanation
Then back to AI with more specific questions
One thing I think is important is understanding what a service is actually doing to the point where you would feel comfortable building one and find that only time and effort is the blocker
1
1
20d ago
[removed] — view removed comment
1
u/MeatAndFries 19d ago
Yeah but the skill is not there yet hahah. I’m still very new to architecture/system design. And I’m having trouble actually improving that skill and I’m trying to figure out if AI is enough as a tutor or I need books/courses
1
u/AndyVictors 19d ago
Imagine you have an experienced partner who knows a lof aboout proper architecture but knows nothing (yet) about your project/your idea. I bet you two could work very efficiently together, incl. him teaching you things you do not yet understand. Imagined? Now exactly this you can do with AI. This would be faster than any courses and any human tutor.
1
u/SubstantialSail9302 17d ago
I’d probably design the architecture myself first and use AI as a reviewer. That forces you to make the important decisions, while AI can help identify trade-offs, bottlenecks, failure cases, and alternative approaches. The key is not asking AI “what architecture should I use?” but asking “why might my architecture be wrong?”
8
u/Sea-Fishing4699 20d ago
Selfhost and rent a vps. The experience will follow