Mentions of shift-left can be found almost everywhere lately. In articles, podcasts, workshops, and it often appears on discussion forums as well. For many, this term has become synonymous with a modern approach to software testing and quality management. But what does shift-left actually mean? And should testers fear for their jobs?
What is shift-left?
Shift-left is not a new concept. It's an approach to software quality management that distributes testing and quality-related activities throughout the entire development process. If we imagine software development as a timeline, where testing used to be placed at the end (right), shift-left moves this process closer to the beginning – to the left. This principle has been a part of agile methodologies for a long time, but it's been receiving more attention lately.
I've mentioned before, for example in the article "Stop Testing and Start Developing," that testing should be a natural part of the entire development cycle, not a separate phase at the end.
What does shift-left bring?
IT is a dynamic field where competition forces companies to quickly respond to market changes. Companies need to deliver software and new features as quickly as possible. The traditional waterfall model, where requirements are passed from one phase to another, doesn't allow for rapid response. By the time an analyst is passing specifications to developers, the competition might already be releasing an application with the same functionality. In this regard, shift-left allows for streamlining the entire process by involving testing and quality management from the very beginning of development.
How does shift-left change the way of working?
Shift-left brings a change in thinking for the entire team – everyone is responsible for quality from the very beginning, not just the tester at the end of the development cycle.
How to achieve this? The key is collaboration and expanding competencies. Even in the agile approach, specifically in Scrum, it's expected that every team member should be able to contribute at any phase of development. Shift-left additionally adds the requirement for everyone to think about quality during development.
What about business? Will costs increase?
Shift-left may result in more meetings and discussions, which might initially seem like a decrease in productivity and an increase in costs. In reality, however, by addressing problems right at the beginning, the number of errors is reduced, the time for final testing is shortened, and the number of fixes resulting from incorrect assignments or misunderstanding of requirements is decreased. Overall, this reduces the costs associated with software development and maintenance.
How to transition to shift-left?
There's no universal recipe for implementing the shift-left approach. It's all about changing the mindset of team members. We often see teams claiming to use Scrum, but in reality, they're still working according to the waterfall model. The first step could be implementing real Scrum, where quality is seen as everyone's responsibility, not just testers'.
Forcefully implementing shift-left won't help. A team can't be changed externally. However, if one team member understands the benefits of shift-left and inspires others, the whole team can gradually adapt.
What does it mean for testers?
For testers already working in Scrum, nothing fundamental changes – shift-left works naturally here. However, for those still in the traditional waterfall model, shift-left can mean a fundamental change in approach to work.
What will definitely change is that the role of testing will no longer be the entry point into the IT world. This is sad news for graduates of retraining courses, who often start their careers as manual testers. The market has evolved, and current requirements are much higher – companies are looking for people who can manage overall quality and actively contribute to the development process. QA engineers must have technical knowledge, understand automation, work with continuous integration tools, and ensure that quality is a priority from the first step of development.
Will we lose our jobs?
There's often a concern that shift-left will bring an end to testing because developers will test their products themselves. It's true that manual testing will likely be gradually replaced by automation and QA engineers.
Yet there's nothing to fear. Testers now have the opportunity to expand their skills, become more technical, and focus on areas like automation, DevOps, or analysis. A QA engineer will be someone who can function across the entire development team and contribute to product quality from the very beginning.
Conclusion
Shift-left won't bring an end to testing, but rather a transformation. Testers will need to expand their skills and adapt to new technologies. The role of a QA engineer will be much more technical and complex, which is also a great opportunity for personal growth.
Share article
Author
Jan ZatloukalTester and developer with a passion for automation and improving the development process. I am currently working on an electron microscope automation project in Python.