The future of software development is about good craftsmen. With infrastructure like Amazon Web Services and an abundance of basic libraries, it no longer takes a village to build a good piece of software.
These days, a couple of engineers who know what they are doing can deliver complete systems. In this post, we discuss the top 10 concepts software engineers should know to achieve that.
A successful software engineer knows and uses design patterns, actively re-factors code, writes unit tests and religiously seeks simplicity. Beyond the basic methods, there are concepts that good software engineers know about. These transcend programming languages and projects - they are not design patterns, but rather broad areas that you need to be familiar with. The top 10 concepts are:
1. Interfaces.
2. Conventions and Templates.
3. Layering.
4. Algorithmic Complexity.
5. Hashing.
6. Caching.
7. Concurrency.
8. Cloud Computing.
9. Security.
10. Relational Databases.
To be continued..
No comments:
Post a Comment