IronShay

Ironing code, geek t-shirts and even presentations!

NAVIGATION - SEARCH

How Do I Convince My Boss?

I’ve been evangelizing IronRuby for quite a while now and during this time I have been asked this question numerous times. I’m sure anyone in the .NET community who’s trying to evangelize something that is a bit outside the standard toolset have run into this question as well. And I have no doubt it happens in other development environments too. It’s a worldwide problem we’re facing here!

This is actually a good question. The guy/gal who asks it probably understands the benefits of the new technology/tool/whatever but they know that it will be hard to break through their workplace “defenses”.

Indeed, looking through the boss’ glasses, it sounds crazy to change they way people work…. learning curve, complications, an unfamiliar world… or in other words – it is outside the comfort zone. This is actually the heart of the problem – this popular comfort zone. It is, actually, comfortable there. However, it is also still… very small evolvement takes place inside the comfort zone. And you know what Darwin said would happen when something doesn’t evolve, right?

Anyway, we’re here because we do want to evolve, we do want to improve and we do want to use the right technology for the job. So first, let’s get familiar with who we’re dealing with:

  • Small startups – startups are the most open-to-changes workplaces out there. This is because in startups, managers don’t really care how something is created as long as you do it fast, you do it good and it doesn’t cost a lot of money. This is where you’ll have most chances of succeeding in convincing your boss.
  • Small-medium companies – small-medium size companies tend to be more conservative. You will run into different tools/languages here and there but mostly there will be a single declared method of how a project gets done. It won’t be a piece of cake to sneak a new technology/tool in here but if you succeed to persuade a few people in your close circle, you might have a chance.
  • Large-huge corporations – you’re screwed. Politics is what’s running the place, not technology. Therefore, managers will be unwilling to make changes, sometimes even just because they are not technological people and do not understand the benefits. I believe that you can make a change even in these corporations. However, be ready for a long and exhausting fight.

Moving forward, before deciding to go ahead and use your technology/tool in your workplace, be aware of the next bullets:

  • Know the technology/tool. People will try to talk you out of it and ask you all the questions they can think of. You need to have answers.
  • The technology/tool must have real and clear benefits. The more these benefits can be translated into saving money to the company the better. The benefits must also be something you can present – it takes less time, the code is clearer, it is easier to maintain, etc.
  • Do a great job. If you finish the project two weeks late, no one will want to hear about your new technology/tool even if it’s really the greatest thing ever created.
  • The WOW effect will greatly help you. If you succeed to wow the people that don’t want to see new technologies in the office, you’re half way in. Try to have that wow effect somehow.
  • Be ready to fail. You might not get through the first time. But don’t stop fighting, try again. And again. In the meanwhile you’re using the technology you like so it’s not that bad at all. However, a lot of people really really like their comfort zone and will not agree to move one inch away from it even if they have no good excuse for doing so. If these people are the decision-makers, your chance of getting through is very very small. In such a case, if you’re into new technologies, maybe your current workplace is just not for you.

OK. What do you do now? Well, you have multiple options. I recommend you to try the first one first, if it doesn’t work try the second one and so on.

Get a Permission

Approach your boss and ask for his/her permission to use your technology/tool for a specific task. Do not come and say “let’s use X” because you will get the generic answer “cool, we will” and never hear about it again. Be specific.

In addition, come prepared. Tell your boss why you want to use X for that task and what will you/the team/the company/the world benefit from it. You can also suggest you’ll do a presentation for the team about it and decide together if it’s worth trying.

Work in Parallel

Your persuading campaign didn’t go though and you haven’t received the permission you hoped for. This is not the end, but you will need to work a bit harder.

Given a task, work on it and finish it with the current technologies/tools that everyone is using. In addition to that, work on the same task individually in the technology/tool you want to convince your boss to adopt. Then, when the day comes to show your boss your work, show him/her also your side project and explain them the benefits. Once they see both implementations, can compare them and really “feel” the benefits, they might be convinced more easily.

Don’t tell your boss

I actually don’t like this solution at all… I think it is the fast way to get fired. But it is an option and you need to be aware of it.
This should really be the last resort if your hands are burning and you must use this new shiny technology in your workplace and you know that until Earth is destroyed, there is no way someone will approve you to use it. Anyway, please ask for permission first. Maybe you’ll get lucky.

The idea here is very simple – your boss tells you to do something and you do that with your beloved new technology/tool without letting anyone know. Then you come back to your boss, in record time, and says “I’m done”. From here there are three main scenarios:

  • You are fired immediately.
  • You loose your credibility and after a while your boss fires you.
  • You become the new hero. The technology is adopted by your team and then the entire company. The boss likes people who swim against the current so after a while you are promoted and eventually you become the CEO of the company.

Epilogue

I believe that any person who wants to improve himself/herself in what they’re doing, should widen their horizon and look around. It’s a win-win situation - if you like what you see, learn from it and try to import it into your development environment. If you don’t like what you see, you will be more grateful for what you already have.

And if you think that you’re only one person and there’s no way you can convince your boss and affect the company you’re working for, remember that it only takes one person to start a revolution.

Viva la Revolution!
Shay.



Comments (3) -

I disagree a little with your thinking regarding the "Don't tell you boss" style.

As a professional developer, you are hired to do your best. You wouldn't ask for your boss' permission to do your work, neither would you ask if you may do your best. This is expected from you, so the answers are obvious. If your manager is non-technical, why would he care about an implementation detail? He hired you to do that job. You should always do your job in the best possible way.

Naturally, you shouldn't go against company rules either. I don't expect this to be the situation though, as this could be an indicator of having chosen the wrong job. If you believe your manager will restrict your abilities and will require you to solve tasks in a specific way, I believe you - as a professional - should find a better job. I am aware that many places doesn't work like what I'm suggesting, but on the other hand there is also a lot of places where I simply wouldn't want to work Wink

Reply

美国 Michael Campbell

Part of the problem is that "evangelism" is not a cultural norm in the .NET community.  For a variety of reasons, most .NET'ers are perfectly willing to take whatever official Microsoft stuff is given to them and not question it at all.  

Truly you have a daunting task.

That said, I think the "ask for forgiveness is easier than asking for permission" shouldn't be undervalued.  Experience has shown that getting something out quickly (and bonus points if it actually works) can cover a multitude of sins.  In the worst case you can cover it up by saying, "It's a prototype", then take 6x the amount of time re-doing it in C# or whatever the anointed standard is where you are.

Reply

美国 Alex Hoffman

You missed the best way... give your manager a *compelling* reason to use the new technology.

But for IronRuby, the problem is that aside from embedded scripting, there is no compelling benefit for a _manager_ to consider adopting it?.

Reply

Add comment