Back to Basics
We live in a very demanding world with so much focus on performance and results and value sometimes it’s easy to get distracted from what really matters and spend too much time chasing those ‘value add’ activities. It helps to remember the reason that they’re called ‘value add’ is that they add onto something – and that something is the basics.
The basics are what businesses succeed or fail on; cash flow, recruiting good people, cost control, legislature – rinse and repeat. The basics are what all sports teams succeed or fail on [look at rugby]; contact time, passing, tackling – rinse and repeat. There are basics to every organization, every team and every role. To be successful at anything you need to know what your basics are, then focus on them to the exclusion of all else until you have them running like clockwork and then you’ve got a really solid foundation to build on. Then you’re in a position to ‘value add’ through whatever other opportunities you spot.
So what are the basics of building webscale distributed systems? I believe there are six things you can never opt out of:
1. Scalability
2. Maintainability
3. Quality
4. Security
5. Availability
6. User Experience
Always do these things well and you will succeed. I have never seen an engineering team fail because they did a weak presentation at a conference or spent too little time on R&D but I have seen plenty of fail because their software couldn’t scale or suffered massive security flaws.
I’ve decided to do a series of posts exploring these six principles, looking at simple ways you can challenge yourself every day to make sure you’ve always done the most appropriate thing for each.
See you next week.
Leave a Reply