IT People’s Technical Debt and Reputation Credit

In Canada and USA, when people apply for a credit card or a loan/mortgage, the lending institutions will always do a credit history check against the applicant, and based on the result, they will decide whether to approve the application or decide what loan rates the applicant will be charged. This practice no doubt greatly reduces the potential default risks the financial institutions may take.

On the other hand, because of this practice, most people are very careful about their financial well-being, and everyone tries the best to be responsible for their financial decisions so they can avoid a bad credit history. This is such a good win-win scenario from both social and personal perspectives.

I have been in IT industry long enough to see lots of bad results because of improper trust bestowed to people who are assigned or hired to take on some tasks. The most disturbing thing to me is these people can leave for another job without any “credit trace” left behind for whatever “damage” they have done to their projects / work and may repeat their faults again (because they may not even realize their faults in some cases, I will give an example later).

I define “Technical Debt” as the negative impact (to either an employer or a community involved) an IT professional has caused through his professional work, and “Reputation Credit” as the positive impact. I always dream that if there exists an organization that can collects all IT professionals reputation credit history and with some formula, can assign a credit score to each person, then there will be far fewer failed IT projects and far less wasted time and money in various IT activities. For example, it will be easier for companies to hire people and make the justified compensation package based on one’s credit score just like banks will charge you less rate for a loan when you have a high credit score, and it will also be much easier for decision makers to decide whose recommendations may be less risky to follow thus less possible to have a project slipped into mess.

Here are the two true stories that I believe if we had such “Reputation Credit Bureau”, there would be different outcomes:

1. A Canadian IT company has a new CEO hired, the company has been service-oriented by providing out-sourcing work on developing applications and consulting service and has been profitable all the time, the new CEO, for whatever reason, tried to change the company’s business model by developing a hardware product, and as such, spending millions in setting up a new office in US, after two years, it seems the hardware product does not achieve the expected response from the market, now the CEO left the company and got hired in another start-up company in Silicon Valley. The Canadian company had to wrap up the product project and dissolve the US office and also laid off 40% staff in Canadian office. It left a bad taste to all people affected.

I bet the CEO should get a very bad score (to the brink of bankruptcy) for her technical debt owed to this Canadian company and to all those laid-off people both in Canada and US offices. I also bet the start-up company in Silicon Valley will have a second thought if it run a “reputation credit history” report on this candidate.

2. A company started a multi-million dollar project by using some fancy technologies, in the initial discussion of the technical design, some proposed design points, for example, data modelling, are strongly objected by the DBA team who have been dealing with data modelling and sql server technologies all their career lives, but decision makers finally takes the opinion of the developer team, in which the technical architect is a member (who himself has very little knowledge of the complex data modelling). The result is a huge productivity underperformance, and the project was delayed again and again. The funny part here is those who strongly recommended the design and the methodology already left the company within 1 year, and those who remain are struggling to deal with the issues caused by such a flawed design. I’d believe those who initially proposed such architect design truly believe this is the best choice, but what puzzles me is how one can (or dare) stick to their opinions when someone else with more domain knowledge on the topic are against their opinions? In an analogy, it is like I dare to stick to my t-sql solution proposal when Itzik Ben-Gan recommended otherwise after reviewing my proposal. It is just beyond my understanding how this could ever happen.

I keep on thinking that if there is such technical debt thing, those who do not have enough domain knowledge will be very cautious to propose something that they are not sure of themselves, knowing there will be “penalty” (i.e. low reputation credit score) down the road if things go south, and as such, the correct recommendation from the DBA team may be adopted (for the data modelling part), thus avoiding the current headaches.

Of course, IT industry is not a financial industry, so this “reputation credit bureau” will not come to reality any time soon, but I still believe with spending in IT industry so big (thus big stake in financial well-being to companies), someday, such “reputation credit bureau” organization will be created in one form or another, and it will be beneficial not only to employers(who can hire the best people they can afford) but also to individuals (who will know that they will be fairly compensated). Such “bureau” can sustain itself by charging for any credit history queries just as the current credit bureau does (Equifax / TransUnion).

I am looing forward to that day…

Advertisements
This entry was posted in professional development and tagged . Bookmark the permalink.

11 Responses to IT People’s Technical Debt and Reputation Credit

  1. Regarding your first example, you have to remember two things: 1) the CEO might have been a specific experience, prior to the one that failed, that has interested the start-up company, 2) at the CEO level, people tend to know each others and proficiency might not be the main deciding factor in hiring someone (he/she might have helped in the past one of the founder or their backing for example and they are returning the favor).
    Bad decisions happen every day and DBA’s are not immune to it. Maybe the team that left half through the year were actually pushed or even fired without you guys knowing what is happening. You are paying the price but at least you are still employed. As for the ones that took a bad decision, don’t they need a second chance?

  2. sarahemmm says:

    Second chance – sure, but maybe they were never aware that they had made such a bad decision? Probably will still tell anyone who will listen that the DBA team made it fail.

    Jeffrey, I agree with you and I think this is a great idea. Of course, I am speaking from a position of nearing retirement, so I can say what I like nowadays 😉

  3. David says:

    Domain knowledge is a good indicator of experience, but not necessarily of expertise. I also think something that you are overlooking or perhaps had not yet thought of is that such a system would stifle innovation and certainly stifle risk.

    Your dream means that I, as a web developer with a good many years in database experience but never a DBA myself has no business trying to convince the DBAs that there might be a better way to accomplish something and if I try, there might be a penalty to me, both personally and professionally, based on your statement “those who do not have enough domain knowledge will be very cautious to propose something that they are not sure of themselves, knowing there will be “penalty””.

    Your thought is to punish the suggester, unless something just magically works out and the project goes well. What I find interesting, is that the suggester likely is not the decision-maker, yet they should be punished for undeserved influence on the decision-makers? Perhaps your decision-makers make too much money.

    Also, who decides what ‘enough domain knowledge’ is in order for an individual to deliver an idea?

    This is a horrible, horrible dream.

  4. Sir Lanse says:

    The CEO/CIO executives are more likely friends of the Board. Maybe hiking buddies (facebook). They bounce from plum to plum and make sure the money flows to the board’s other companies. In the example, who owns the office building they opened in the US? Who owns the supplier companies? The money flowed out of the one, and into the pockets of other friends. Perhaps the company that hired him next.

  5. john says:

    Your proposal seems to be based on the flawed assumption that humans can/will be objective in evaluating outcomes (technical debt), in assigning blame, and in assigning reputation credit scores (a respectable wish). I suspect that this has been an issue for as long as one person has worked for another. But, since everyone has their own limited viewpoints and prejudices, outcomes would not likely be as egalitarian as desired.
    Examples already exist in social media where group ratings (“likes”, “followers”, “connections” on Facebook, Twitter, LinkedIn) are used to rank people in a particular social pecking order. These ratings assume that large groups of people will give roughly accurate rankings, but has anyone checked for what happens in the outlying cases – i.e. is bias built into the system? Ultimately, I believe you may want to seek how to create a system with accurate and just evaluators. If that is possible, then you may have a good idea. I wish you success at finding a solution!

    P.S. – My specific concern is that systems like LinkedIn, which can impact whether or not people get jobs, are based on the assumption that you’re willing to give up lots of personal information in order to be evaluated. I prefer to not do so electronically, and as a result, would likely not have a good “reputation credit score”, even though I’ve never received a bad review, have received a variety of awards, have automated many processes, have identified millions of dollars of verified improvements or corrections, and have engineering, business, and data backgrounds.

  6. Nate says:

    I would argue that *not* trusting your staff causes these problems much more than trusting them.

    Example 2 is a good one, but you can also have the opposite occur: You end up with siloed work units of DBA teams that don’t have a clue what the development team is building, and makes very bad blanket rules (example – “No SQLCLR allowed!”) without actually understanding the positive use case and reduction in complexity that it provides to those teams. DBAs are notorious for setting up rules without adequately justifying them with evidence. I worked with a DBA team once that insisted every table have a clustered index on an integer surrogate key even if the SK was never, ever used (it described a many-many relationship between two entities). A CI on the set of keys that related the tables would have made much more sense.

    Yes, there are bad devs out there and bad designers who also follow blanket rules like “no ‘buisness’ logic in the data tier”, which leads them to design a few giant tables with no constraints or keys (or worse, just storing XML or JSON as strings the database). But it’s the job of the good DBA to educate on *why* the model should be more relational, not just claim “I have been dealing with data modeling and sql server technologies all my career life! My word is gospel!” Developers don’t respond well to the priests in charge of most corporate databases (many of whom, to be honest, are almost just backup and recovery point and clickers.

  7. J. O'Hearn says:

    I read not so long ago a science fiction short story which essentially revolved around the idea of a ‘reputation credit bureau’ that you have proposed. Employers rated their employees and shared that with all other employers. This resulted in the black-listing of people with low ratings who would never have the opportunity for employment again. The government rounded up these ne’er-do-wells and put them in camps where ultimately they ‘disappeared’. The point is that no one had the opportunity to improve: once marked with the ‘scarlet letter’ they were doomed to wear it until the bitter end. In real life, not science-fiction, such a system is ripe for injustice: just look at the folks who have to go to extremes to fix their financial credit, even when they are not at fault.

    If a company is worried about what you are bringing to the table then they should ask you to describe in detail what you have done in the past and to illustrate what decisions you made and why with respect to your body of work. Not only that, they should also ask if the product shipped and whether it made a profit. This is far more effective than asking a battery of technical questions like employers do these days. This would, to a fair extent, overcome the need for a ‘reputation credit bureau’.

  8. jxhyao says:

    Thanks to all for your excellent comments. I am not here to argue about the specific comments, I am here to propose a potential improvement to IT practice that may benefit IT industry as a whole. Yes, people make mistakes but people also make great wonders. What puzzles me is you will be applauded for your achievements (no doubt, you will put those achievements in your CV), but there is no way to trace your IT “misbehaved” work. The result is: 1. You may repeat your mistakes 2. Your future mistakes may again impact others unnecessarily.
    With “reputation credit score”, you may have low credit scores in your early career stage, but with your efforts, your score will go up. Even if you bankrupt (i.e. credit score < 0), you may still get good credit score later, just as how your financial credit score works in the real world.

  9. Stephanie Brown says:

    You have a most fascinating dream. While the concerns others have raised in their comments are valid, they don’t negate the dream – they simply add to the complexity of it. While professionals should feel comfortable proposing solutions that include areas they may not be “experts” in, they definitely should be thoughtful regarding how hard the “push” to get their solution approved without regard to the input of others.

    As with any “measurement score” philosophy, it could be abused by those who use / control it, and “gamed” by those who disagree with it or who don’t want to put in the effort to improve themselves. I don’t think those are reasons to avoid the conversation about how such a system might work, nor are they valid arguments against such a system. The end result wouldn’t be any worse than the un-realized bias in the way interviews are conducted by most companies (see http://www.sqlservercentral.com/articles/Editorial/141757/). And as with the credit scores, it would only be ONE piece of information a company would look at when reviewing a potential hire. (At least in my mind.)

    maybe there are two numbers – technical debt (negative impact) and reputation credit (positive impact)
    Maybe those numbers are associated with different skills or aspects of a person – coding, DBA, leadership, teamwork, communication, business acumen and so on – so you don’t have just one score you have many.

    As I said, fascinating and complex. Worthy of additional thought, IMHO

  10. ddsg says:

    “This is such a good win-win scenario from both social and personal perspectives.”
    Not always. Credit scores are evil. Those who do not need credit (like me) have the highest scores. It is a way for banks to cover their risks at the same time make the highest profits while dumping on the poor guys/gals. Income and cash flow are more crucial than credit scores to loan repayment. Banks look at credit scores to gauge how much extra fees that they can squeeze out of you. Those with better scores get charged more just because they can pay more. It is also a way for racketeers to extort money in return for not ruining your credit score. The score is really just a big fraud put on the middle class to squeeze more money from them.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s