3 ms·
I'd say it would really depend on your level of education. When learning any tooling, you spend more time in the documentation at the beginning and need to refe
by kellros 14y ago
I'd say it would really depend on your level of education. When learning any tooling, you spend more time in the documentation at the beginning and need to refer to it less and less as you gain experience. The next steps are specific to the field you are working in, whether it be LOB, embedded, distributed, data processing etc. For LOB apps I found it invaluable to review design patterns (because all tooling/frameworks use them) and object-oriented design principles. Development is more than just programming. Programming is the method of writing software and should become an asset in your arsenal, just like project management or problem solving skills. Unfortunately a lot of educational material doesn't go into the realm of proper architected software and instead just focuses on programming. Take a look at domain driven design (ddd), distributed domain driven design design (dddd), command-query responsibility segregation and different types of logical layering such as n-tier, client/server,semi-connected apps or onion layering too.
On a final note, write a lot of programs - even if they are only a couple of hundred lines of code. Productivity really kicks in after you've become comfortable not reinventing the wheel all the time - everyone should invest time into working this out of their systems.