My team came up with a really cool reentry mode that spun the craft longitudinally like a football as it reentered and then used the gimbals on the 5 engines to flip it over and retro burn to a landing. It all worked on a simulation on the VAX, but the DC-X crashed on a landing before we ever got a chance to ask McDonald Douglas if they would try it out.
Wow, that was a huge digression. Sorry. Anyhow, I got this cool opportunity to go to work for a Big 6 consulting firm in 1993. Andersen Consulting was known world wide for being amazing at getting big business systems built for big dollars. They did this by drop shipping hundreds of smart yet inexperienced college grads on projects after reading one book on a programming language and claiming that they were worth $100/hr. That is like $200/hr today. They hired for a very specific personality profile: Super Smart, Ambitious, Personable, Competitive, and willing to chase the "Golden Ring." Customers called us "Androids".
In retrospect, the "Golden Ring" is a fascinating concept. Soon after hiring on, a Partner picks you up in his Porsche 911 or Jaguar. You go to lunch in a high end restaurant and he tells you about how he was just like you just 8 years ago making $30K per year. He then tells you the secrets to getting on the fast path and how you can be at the Manager level making six figures in less than five years and Partner making seven digits in eight. We totally bought it. Hook, line and sinker. And we showed up at our customer site ready to move mountains.
It reminded me of this quote about socialism:
“Socialism never took root in America because the poor see themselves not as an exploited proletariat but as temporarily embarrassed millionaires.”― Ronald Wright, A Short History of Progress
It is kind of like all of us middle class kids were convinced we were already millionaires and it was just a matter of time.We never took an honest and analytical look at the mental math. Lets see. I was making $30K per year. Working 70 hour weeks at $100/hr, we were making the firm $350,000 per year. Seriously. We never thought about it. We just looked at the Partner's Porsche every day and kept hammering along.
In hind sight it is bat shit crazy.
To make matters worse, even though we were chasing a pretty big carrot, there was a pretty scary hammer right behind us. They called it "Up or Out." Basically, you had to keep progressing every year. Keep getting to the next level. If someone stalled out, even if they were good at that level, they were pushed out. I saw guys that were great programmers that 3-4 years into their career at the firm were not moving into team lead roles. Instead of letting them continue to be productive as programmers, they were pushed out.
This pyramid scheme was masterfully set up by the partnership. They already knew they had the partnership largely sewn up. Sure, they would let a few guys into the club each year and make a really big deal about it. This was important to continue the myth. But in reality, by the mid 90's, there were 65,000 employees and about 500 partners. About 10 new partners got in each year. So in reality, you were far more likely to fall victim to the "Up or Out" hammer than the "Golden Ring" glory.
Our customers were largely shielded form all of this. They just saw this army of smart (yet green) kids hammering out mountains of code for 15 hours a day and for some reason could not figure out how to motivate their employees to work over a 40 hour week.
Andersen (and the other large consulting companies) figured out how to productize consulting. It seems like a weird way to say it because we were not making products. We did not make cars or microwaves, or stereos, or computers. We just had people. So it was critical to productize the people. The Firm (as we called it) had honed this whole mindset with the people. They took it even further and told us that we were the elite. We were told we were like special forces and our customers were the army. They told us "You are much smarter than our customers and that is why they hired us, but don't let them in on our secret. We don't want them to feel bad."
We came up with ridiculous methodologies that we printed into three 10 inch thick binders and would thump onto a prospect's board room conference table to help put an exclamation mark that we were the only ones that could make their impossible goals happen. And we were confident we could do it because we had the Method/1 process. That too was a masterful part of the whole productization of consulting. Customers believed that we had the people and methods to make their dreams come true.
To a degree, this was not all just marketing and propaganda. We actually did have a good track record of delivering on tough assignments. For instance, in my first few years at the firm, we completely rewrote the insurance contract management systems at USAA. Then we built the first ever online banking system for them in 1997 and one of the first online stock trading systems in 1998. It just cost them a mountain of cash. My guess is that in the seven years I was staffed at USAA, we billed them over $100 Million. Even in today's dollars that seem ludicrous.
For instance, today, I could pull together a 20-25 person team and build the USAA online banking system from scratch in less than a year for less than $1 Million. That includes hardware, software, licensing, etc. It is just crazy what we got away with in the 90s.
I think part of that is why there is such a tenuous relationship between business and IT. For so long, IT has not been a good partner to business.
In the bad old days, we either would:
- Cost way to much but delivered
- Were cheap, but did not deliver what they needed
- Or worst case, we were expensive and failed
That is probably why business gave up on us and went off shore. I guess they mostly just figured that if it is gonna be crappy or fail anyhow, let's at least keep it cheap. From the mid 90s to the mid 00s, most of the business software out there barely reached the upper echelons of mediocrity.
I think the IT industry and consulting are getting better now. It only took forever. Agile methods put more accountability on development teams to quickly demonstrate business value and grab new levels of efficiency. Also, Agile empowered the business to be able to react early when development teams get off course. I wish I could say that the days when a consulting firm can trick a company into spending millions of dollars on bloated processes designed to maximize cost were behind us. It is getting better though.
I know most anyone that reads this post knows the Agile Maifesto, but it never hurts to go back and read it from time to time...
Principles behind the Agile Manifesto
Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software.
through early and continuous delivery
of valuable software.
Welcome changing requirements, even late in
development. Agile processes harness change for
the customer's competitive advantage.
development. Agile processes harness change for
the customer's competitive advantage.
Deliver working software frequently, from a
couple of weeks to a couple of months, with a
preference to the shorter timescale.
couple of weeks to a couple of months, with a
preference to the shorter timescale.
Business people and developers must work
together daily throughout the project.
together daily throughout the project.
Build projects around motivated individuals.
Give them the environment and support they need,
and trust them to get the job done.
Give them the environment and support they need,
and trust them to get the job done.
The most efficient and effective method of
conveying information to and within a development
team is face-to-face conversation.
conveying information to and within a development
team is face-to-face conversation.
Working software is the primary measure of progress.
Agile processes promote sustainable development.
The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.
The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.
Continuous attention to technical excellence
and good design enhances agility.
and good design enhances agility.
Simplicity--the art of maximizing the amount
of work not done--is essential.
of work not done--is essential.
The best architectures, requirements, and designs
emerge from self-organizing teams.
emerge from self-organizing teams.
At regular intervals, the team reflects on how
to become more effective, then tunes and adjusts
its behavior accordingly.
to become more effective, then tunes and adjusts
its behavior accordingly.
I know this post is a big rant, but there is an important lesson for us here. We (the IT industry) cannot allow ourselves to revert back to to where we were in the 90s. Although it was really fun being on the consulting side, the long term effects are unacceptable. If you are building software as a consultant or for a product line, you have one responsibility: Deliver value. Every day when you get to your desk and the caffeine starts circulating, write down how you will add value and eliminate waste for the business that day. Do something little every single day and don't leave until you do. Also make sure you clearly understand how your work will further the objectives of your company or your company's customers.
If you are not committed to the mission of constantly delivering value, please get out of IT. We need this profession to be seen as the key differentiator for business success. Every time you are over budget, deliver bad designs, are late, allow poor architecture to persist, or accept quality issues, it is not just a reflection on you, it is a reflection on our profession that can take years to clean up.
TL;DR: Every Day Add Value, Eliminate Waste, And Don't Suck!
No comments:
Post a Comment