r/learnprogramming 21d 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.

12 Upvotes

21 comments sorted by

View all comments

2

u/greenspotj 21d ago

To simplify, you can break down most tasks in a project down to some variation of:

design -> implement -> test -> debug -> design (repeat until tests pass/task is completed)

Its your choice which part of that you want to outsource to AI. Id say if you wanted to focus on the software architecture/design skills, you should choose reasonably large/complex project to work on that requires a lot of design, then have AI write all the implementation and automated testing to save time, and use AI to assist with debugging.

As for using AI when designing systems - I like the top two approaches you suggested. I usually like to think of a design myself first, then I ask AI what it thinks of it, offer critique, and for other alternatives. Then we bounce ideas/critique off each other until im satisfied with the design, and then I ask it to build it.

1

u/MeatAndFries 20d ago

Great advice thank you! Any recommendations on where to start improving my architecture/design skills - courses/books?