Friday, July 20, 2007

Working it Out

My company, Indymac Bank, laid off 400 people yesterday. The mortgage business is rough and Indymac's stock has taken a beating this year, down over 40%. I still work there, well at least until Monday when my termination becomes official. They say I was too expensive, but my last two managers had not liked me and people in India will work for almost nothing compared to my salary.

I first started with the company in 1993 when it was called Countrywide Mortgage Conduit. It was then a wholly owned subsidiary of Countrywide Mortgage, but over the years it somehow bought itself out from under Countrywide and grew into one of its biggest competitors. When I started with them as a contract programmer, the IT department was one manager and one employee. I installed the company's first copy of the newly released Windows NT and wrote about 50% of the code for their first major application, FOCUS (Front Office Commitment and Underwriting System), a massive Visual Basic/SQL Server application that most of the company's 80 employees used to do their job on a daily basis. I was the first contractor they hired in 1993 and the last one they let go in 1995, when they decided that contractors were too expensive.

I moved on to Disney and Nestle and then in early 1999 I took another contracting job at IndyMac Mortgage (I missed the intervening name of Independent National Mortgage Corp.). I worked in the consumer construction lending division, writing software in support of a rather lack-luster third-party product called TCL (The Construction Lender) before doing a bit of work with the newly formed Reporting Management Group. They were looking for a way to centralize reporting across all divisions of the company.

I had built such as system at Nestle using Crystal Reports and came forth with what I thought was an improvement to that design, delivering reports through the Intranet browser, which would build a dynamic interface for each report, and relieving the need for a desktop reporting system on each PC. I had no idea how to do this, but I said I could and I pitched and sold them on the idea and then delivered by building the Report Hub, releasing the first version in January 2000. Within a few months the majority of reports in the company were running on the Hub. The way it was built you could embed it into applications and as I had now moved on to the commercial (subdivision) construction lending group we quickly integrated the Hub into the budgeting and disbursement program being written for them: Loan Explorer (LE). I was soon doing all development for LE

In the massive contractor purge of 2001 (they go through these every few years), I stayed on and became an employee for the first time, taking a rather large cut in pay, but adding some fairly good benefits. Also, after the big Y2K fiasco and the .COM collapse, the market for contractors was pretty shitty at the time. It was somewhere around here that IndyMac bought a small bank and changed their name once again.

I had some fairly good years there, 2001-2005 and even part of 2006, but there were always conflicts. First, the way management bonuses were set up a manager had to produce something on their own in order to get a bonus for it. You've heard the expression "If if ain't broke, don't fix it?" Well, at Indymac it's a requirement if a manager wants his bonus! Now when a new manager took over the Reporting Group he could not take credit for the Report Hub's success, so he decided to kill it. Every six months since that time we have been told that the Hub would be turned off in six months. They spent a ton of money on a third-party product called Cognos, which was supposed to do everything the Hub did, only better. In reality it did half of what the Hub did, only much, much slower.

Somehow, even though I was not in the reporting department, I managed to do two upgrades to the Hub over the years (replacing the horrid Crystal scheduler with one of my own and upgrading Crystal versions) and though they have moved a number of reports to Cognos since 2001, the Hub still produces thousands of reports a month (well over 3/4 of a million reports since 2000), and despite them buying numerous expensive upgrades to Cognos, the Hub still does it cheaper and faster. But Indymac upper managment has always been a sucker for a "dog and pony show" (anyone who has ever dealt with the company's dreadful digital dashboard will attest to that) and they bought the Cognos hype hook, line and sinker.

What was good about those years, beside watching one hugely expensive version of Cognos after another fall flat on its face, was Loan Explorer and the people I worked with, both in IT and in the business unit. I was able to take a fairly simple budgeting and disbursement system and over the years build it into a world-class system. I moved much of the logic from the core application to callable objects. The heart of LE was always the spreadsheet views of ever more complex and detailed budgets and draws and even the logic of the spreadsheet was moved out of the app and into the objects where I created synthetic spreadsheets that would tell the displayed spreadsheet what to place in each cell. I also got to create my own spreadsheet formula and cell recalc code, which was a lot of fun to actually see work. My synthetic spread is faster than the spreadsheet control we use and more dynamic in that the data could be poured into any sort of grid or collection of controls and still work the same way.

The people I worked with were very good and I hope to work with some of them again in the future at some other endeavor. But in the past year or so, the management of my department and the business unit we support had radically changed for the worse. It really started in 2005 when we were forced to begin using off-shore resources in India (Indymac uses so many off-shore resources that it is often joked that the company should change its name to Indiamac). The first project sent to them was a million dollar disaster. They spent the entire budget and delivered almost zero usable code. Worse yet, the design of the project had been given over to them as well and they had not a clue as to what they were doing. My management brought us in to fix as much as we could while they did a wholesale firing of the off-shore group, only to hire a new off-shore group that was not much better. Of course there was no budget for this, so costs were hidden in other projects making it look like we were now a problem group as our standard work was now seemingly taking much longer and costing much more.

As a group, our IT department never recovered from the bad PR; bosses never admit that they fudged the numbers to hide their mistakes you know. And so, our customer began not to trust us, and where our drive had always been to work in partnership with the business unit to make their work easier and faster to perform, all thought of a partnership suddenly ended. Where we once listened to their needs and found the best solution for them, we were now relegated to implementing solutions developed by non-technical people, even when we knew they were mistakes. Our motives for doing or suggesting anything were suddenly in question and to put it bluntly, all the fun completely drained from the job.

But even then I wasn't about to give up on the company or my customer. Unfortunately, they gave up on me.

No comments: