3 ms·
You shouldn't expect to graduate with a CS degree and immediately architect complex systems in the first few years. Experience is what makes people proficient,
by davismwfl 7y ago
You shouldn't expect to graduate with a CS degree and immediately architect complex systems in the first few years. Experience is what makes people proficient, and mistakes help make you better. Every time you code something up and have to redo it cause you messed up or didn't understand the problem well enough, you learn more and get better.
I also agree with db48x, the complex elegant solution you saw wasn't designed and done in one sitting. It was likely done over time and with a few prototypes and concepts that then got refined into a more elegant solution. Once you get enough experience, you will go through fewer iterations because you'll recognize patterns and when to apply them. Even then though you might prototype a couple of different ideas to test some theory.
Now if you say you've been coding professionally for 5-7 years and you are struggling still with basic architectures, then maybe there is something else going on.