Over a million developers have joined DZone.

Stop Keeping the Lights On, Part II: Examining the Problem

DZone's Guide to

Stop Keeping the Lights On, Part II: Examining the Problem

In part two of his series, Michael Dowden examines the problems that are inherent in the ''keeping the lights on'' mentality.

· Agile Zone ·
Free Resource

The Agile Zone is brought to you in partnership with Techtown Training. Learn how DevOps and SAFe® can be used either separately or in unison as a way to make your organization more efficient, more effective, and more successful in our SAFe® vs DevOps eBook.

In my first article in my blog series, I presented the JKTLO (Just Keeping the Lights On) problem using two examples from my own experience. In both cases, the overarching issue was keeping the lights on. While this will always be some part of ITʼs responsibilities, the problem occurs when it becomes the only focus of an IT department. When this happens, we lose sight of how IT can contribute real value to the business, which is a major oversight.

In this article in the series, I will further explore the problems and symptoms associated with JKTLO.

Pareto Principle

The Pareto Principle is a helpful tool when discussing JKTLO. This principle asserts that 80% of effects derive from 20% of the causes. It has been estimated that 80% of a typical IT budget is allocated to just keeping the lights on, while only 20% is assigned for new services or applications. This means that 80% of the budget is merely overhead that provides no new value to the business. This 80% IT overhead represented $2.8 Trillion globally in 2015.

Itʼs easy to see why companies often look to IT first for budget cuts, and itʼs equally clear why IT professionals have little time to devote to innovation.


This also has an effect on employee morale. Knowledge workers such as developers, engineers, and accountants are driven by things such as achievement, personal growth, and rewarding and challenging work. Although they require things like salary and good managers, this is not their main motivator.

When the majority of knowledge workersʼ time is spent keeping the lights on, their motivation dwindles. When budget cuts then occur, they further lose incentive as salaries stagnate, equipment and tools become unavailable, and workspaces become crowded.

Shadow IT

Worse yet is when shadow IT departments are created because of JKTLO. Shadow IT departments (often designated by the more official title “departmental IT”) are developed when business departments lack the support of their companiesʼ official IT department. They then hire their own IT staff so that they can make their own IT decisions.

This is a direct result of IT being more focused on Keeping the Lights on than on contributing real business value.

As weʼre examining the JKTLO problem, itʼs important to note that you cannot point the finger at a single person. There are multiple factors at play that bring a department to this point. Take into consideration the date management example from my previous article. Although the developer clearly failed to produce quality code, the team had neglected to provide code review and coaching, and management failed to provide clear specifications and feedback.

It is up to every member of the team to be on the lookout for the JKTLO symptoms Iʼve mentioned above, and it is up to companies and departments as a whole to decide to tackle the JKTLO problem and work together to resolve it, understanding that it is in everyoneʼs best interest to shift ITʼs focus away from simply keeping the lights on so that they can instead spend time on creating new services and applications.

Adopting a DevOps practice starts with understanding where you are in the implementation journey. Download the DevOps Transformation Roadmap, brought to you in partnership with Techtown Training

developer life ,support ,maintenance

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}