New Year’s Tech Resolutions
In the spirit of the New Year, we thought we would share our list of top things that you should consider putting on your technology’s roadmap for 2009.
- Develop the ability to rollback: If you can make only one change to your product and process in 2009 and you don’t currently have the ability to rollback, this should be at the top of your list. Being able to push code changes and then pull them back from production in the event of a problem will save you more customers and more effort than any other single item.
- Break changes into smaller pieces: There is almost never a need to redesign the entire site or service at once. Break it into parts and take it one piece at a time. This will be lower risk and give you an opportunity to learn along the way.
- Remove SPOFs: Commit to removing all single points of failure in your architecture. Single servers, firewalls, load balancers, power supplies, etc should all be listed and tackled one at a time until they are all eliminated
- Remove synchronous calls: Having one service call another service in a synchronous manner causes a multiplicative effect of failure. Five synchronous calls on servers with five 9’s availability (99.999% uptime) leads to a maximum of 99.995% for the system. Eliminate synchronous calls wherever possible and create fault-isolative architectures to help you identify problems quickly.
- Incent a culture of excellence: Hire the right people and hold them to high standards. Set aggressive yet achievable goals and motivate them with your vision. Be a leader.
- Develop a disaster recovery plan: Disasters happen, no one expects an entire data center to be down but things like that happen. Plan on it and start making changes today to keep your services up and running in the event of a disaster.
- Develop quality into the product from the start: Don’t expect QA to ensure quality is built into the product. We’ll post more about this in the New Year but quality starts much, much earlier in the product development life cycle.
- Split your application or database: Start this year thinking about how to split your application and database. We recommend our cube model for both because working on all three axes gives you unlimited scalability in both your app and database.
- Start Logging: As we discussed in a recent post, start logging your application data but follow our three key guidelines – 1) logging must not impede the performance of the application 2) use a common framework and 3) look at the data
- Celebrate your success: Take time now and throughout the year to look back and congratulate your team and yourself. If you want to foster creativity on your team, celebrating victories is a great way to keep the energy up on your team. If you are getting ready to present your 2009 goals to your team, we recommend that you start by focusing on the amazing accomplishments that you have had in 2008.
Wishing you and your teams a great New Year!
-The AKF Team