Updated: Feb 15
User experience is the most important success criteria, and the expectation of our users is permanently on the rise. According to a recent study from Akamai, in 2006 the average business user expected response times of 4 seconds. Today, 49% expect load times of 2 seconds or below. In this post, I will shine a light on reasons why organizations are failing to meet users speed expectations, followed by simple steps towards performance by nature.
Let’s start with your understanding of acceptable load times. Are 2 seconds response times the holy grail for all your applications? Possibly not. My experience is that this depends on the purpose and uniqueness. If there are good alternative applications available, users won’t stay with a slow loading system. Organizations which earn their money with online business will lose revenue if users abandon using their services and spend their money at their competitors. Don’t think that slow load times impacts only those online businesses. Research has pointed out the unsatisfied user are less productive and are more likely to leave.
Drivers of bad user experience
I assume that those who are working in the performance engineering field are permanently fighting against those bad practices. First and foremost, it’s essential to eliminate your complex IT or business processes. If you can’t understand and remember the process in 5 minutes or less, try to simplify it. Secondly, don’t integrate performance testing into your development pipeline and try to solve hotspots with hardware is another fundamental element of bad user experience. Thirdly, don’t reinvent the wheel. There are thousands of outstanding frameworks available, and a broad community can help you to fix identified issues. Finally, just throw your new application over the wall and forget performance reviews on production is another bad practice. Be aware that changes in content, user or data volume have an impact on end-to-end response times.
Performance by nature
Successful retailers such as Amazon set the user experience bar extremely high. Buying products from their stores is simple and personally speaking, I never experienced bad response times on their websites. A user experience first enterprise is more a question of doing the right things than spending millions in tools and testing effort. Based on my knowledge, eliminating nasty performance bottlenecks requires just four practices.
1. Performance Engineering Group Independent whether you follow DevOps or other development principals, you need a team which takes accountability and responsibility for performance topics. Don’t waste time with splitting up performance testing and performance monitoring groups. It’s much better to rely on performance engineers who support the whole lifecycle from development through production.
2. Build Awareness Performance is everyone’s matter. Those who tune all components and forget the end-to-end performance considerations gradually fail to reach satisfying user experience. Create awareness across your teams and open their mind for a shared performance responsibility.
3. Lifecycle Involvement There is much truth in test performance early and often because a high proportion of hot spots root on design failures. Those companies, which consider non-functional aspects from day one in their development process build the ground for good end-to-end response times. Design and test teams reflect NFRs in their activities, and operational staff gets more insights in the boundaries of the new application.
4. Tooling You can spend millions in performance testing and monitoring suites without reaching significant improvements. There are dozens of commercial and open source solutions on the market. Efficient performance engineering suites are designed to share metrics across the organization and allow reuse of all artifacts within the lifecycle. Contact independent performance engineering specialists is a wise decision because they can tell you the truth and will help you find the best performance suite for your purpose.
There is no cure for a permanent performance. Implement the four fundamental steps, and you will push user experience step by step in a good direction. You reached performance by nature if new projects automatically contact the performance group month ago they ship new software to production. Keep doing the good things!