Jane took a job at a big financials company. The pay and the benefits were the first draw, but she was really sucked in by the visions of building analytics and juggling billions of dollars with cutting edge data mangling techniques. “Big data” came up in the interview many times, along with “cloud”.

The first cold blast of reality was when she was given her developer desktop: a Windows XP box with 4GB of RAM and a CPU that could get lapped by the processor in a BlackBerry. “Oh, is this just a dumb terminal I use to connect to your cloud?” Jane asked.

Productivity versus hours worked, showing a steady decline year over year.

“No,” her boss said. “This is your work computer.” As it turned out, Jane had misunderstood the interview- they had asked about “big data” and “cloud” because those were buzzwords that they might be interested in, someday. Today, there were only two applications Jane needed to worry about.

Corporate policy dictated that her computer must be shutdown every night. Each day, when Jane came into work, she would start it up. After a few cups of coffee, it would eventually chug to life, at which point she could fire up the two required applications: Outlook and SameTime.

Jane wasn’t officially considered “at work” unless her boss saw her logged into SameTime. In fact, as Jane quickly discovered, the rapid path to promotion was to leave yourself logged into SameTime for twelve hours a day. Even if you never committed a single line of code, that was enough to make you a “productivity leader”, like Chad.

Chad was the “productivity leader” on their team. He had committed just one, one-line-bug-fix in his entire time at the company, but he was always online. Once or twice a week, Jane’s boss would swing by, “Hey, you should really talk to Chad,” he’d say, “I’ve told him to mentor you, and he’s got exactly what it takes to succeed here.”

Jane didn’t, because sometimes, Jane would try and write software. The emphasis was on try. The first step was to launch Eclipse. The only version she was allowed to use was so ancient that it predated the Jovian naming convention. Waiting for this to start was enough time for Jane to exhaust her phone’s data plan streaming Netflix.

Finally, Jane could actually look at some Java code. Running it was a bit more of a challenge- it meant launching a local WebLogic server, connecting with Firefox, and then trying to replicate and fix bugs. Between the ancient hardware, the ancient OS, the ancient Eclipse, a version of WebLogic that was so old that it could be featured on Antiques Roadshow, and code that was intimately tied to the database server, it could take hours to make it through a single edit-compile-debug cycle.

It was an uphill battle against processes and attitudes that were frozen in 1983, but each Day, Jane went home, confident that she had made the code better. In a small way. A very small way.

One day, Jane’s boss transferred to a different team and vaulted up a pay-grade in the process. Their “productivity leader”, Chad, was sucked into the vacancy in his wake. On his first day, Chad called a meeting.

“Now, I know we’re a little behind the times here,” Chad said.

Jane nodded like a bobblehead.

“And I know that we spend more time sitting and waiting than doing any real work,” he continued. “But I’ve been talking to management, and they’re really enthusiastic about modernization. So be ready for some big changes in the near future, and not to spoil anything- but the word ‘cloud’ is going to feature big in our plans.” After the announcement, Chad asked Jane to stay behind. Once they were alone, he said, “I’ve been meaning to talk to you about the amount of time you’re logged into SameTime…”

That was the last Jane heard about the modernization project until Chad sent out a memo announcing the new “Dev Cloud Machine”. “Now,” his memo explained, “pretty much all cloud provider options require us to put our software into their infrastructure, which we don’t want to do. Instead, we’ve built our own ‘private cloud’.”

This so-called “private cloud” was an old desktop machine that was pressed into service as a WebLogic server. Gone was the painful struggle that was their edit-compile-debug cycle, and in its place was a “cloud” process. Jane edited the code locally, didn’t run it locally, and instead checked it into CVS. An automated job (running once every fifteen minutes) pulled the code from CVS, built it, and deployed the resulting WARs onto the “Dev Cloud Machine”. Now Jane could connect to the WebLogic server and check her work.

The Dev Cloud Server also used the QA database as its backend, an environment which QA, shockingly, used for their own tests. This frequently caused schema mismatches and added to the overall churn.

Even if she wanted to, Jane wasn’t allowed to go back to the old process- since the developers no longer “needed” WebLogic, corporate policy was that it was now forbidden. This rule was enforced by a script that deleted WebLogic installs with every bootup. “For consistency,” Chad explained, “we want all of the developers to use the same process, and that process is the Dev Cloud Machine.”

Some time after this policy change, Jane’s SameTime client stopped working. Maybe the WebLogic policy broke a DLL somewhere, maybe a file or the registry got corrupted somehow. Jane had no power to reinstall, so she raised a ticket. It vanished into wherever tickets go to get ignored by the Help Desk, and Jane did her best to focus on getting work done.

Every few days, Jane would repeat the same conversation with Chad. He’d call her into his office, and say, “We have a problem with your SameTime logins…”

“Yes,” Jane said. “I’ve raised a ticket. I can try and get it escalated.”

After a few rounds of this, though, the conversation changed.

“I have tried to stress the importance of our company policies,” Chad said, “specifically regarding SameTime. And I have to say, your lack of compliance on this front has become a serious problem. We’re going to have to ask you to clean out your desk…”

Jane didn’t bother to mount a defense, and walked out happier than she’d been since she started.

[Advertisement] BuildMaster allows you to create a self-service release management platform that allows different teams to manage their applications. Explore how!