Friday, July 31, 2009

Big Banks: Embrace Entrepreneurial Techies

After I had been made redundant by Investment Bank A, and before starting at Big Bank B, I interviewed with a Large Teutonic Bank's capital markets division, for a permanent role in London. This was to be a tech lead and architect on a massive greenfield project, where a key part of the role was to bring in "fresh blood" who had worked with some new technologies that the development manager was considering. It required spending quite a bit of time investigating technologies for potential inclusion, doing trial and error, and general research time as the project developed due to the issues of scale involved. Because it involved a lot of real-time updates, massive database work, and distributed systems development, the hiring manager though I'd be an excellent candidate. So did all the other senior architects in the group.

I was turned down for the job by the boss' boss. The reason? "He's too entrepreneurial."

I was recently chatting with another London Techie who was interviewing for a permanent role with a Large Yanqui Bank, and he had a similar experience. The hiring manager liked him and his experience, he got through the gauntlet of developers on the ground who would work with him on a daily basis, and he had to go through the "formality" of the HR interview before they could extend him an offer.

He was turned down for the job by HR. The reason? "He's too independent."

Once is coincidence, twice is a trend.

Entrepreneurial Is An Insult?

So let's consider the two of us. We're both active in the technology community outside of work hours: we blog, we go to meetups, we speak at conferences, we work on open source technologies. We've both established that we're able to apply ourselves at a strong level technically, and are able to pick up new technologies on a regular basis, both in and out of work.

You might think that these would be useful traits. You might think that these are in no small part why the hiring managers wanted to hire us in the first place. You'd be right: they realized that they needed outside skills, and some of them cutting-edge skills that are difficult to get inside the sclerotic community of financial services technology, and that they needed to pull in people who Think For Themselves. But The Organization stopped them.

Apparently both Senior Manager and HR Drone viewed us as unacceptable risks (in fact, it was spelled out precisely why I was a risk: in 5 years, I might not want to be in the same role on the same project). We would think for ourselves, we would seek out new challenges, we would rock the boat.

The fact that these tendencies lead inexorably to us having the skills necessary to perform the jobs has never apparently crossed their minds. They somehow think they can find non-independent, non-entrepreneurial technologists who are familiar with cutting-edge technologies and are able to do proper trial-and-error with design, architecture, and vendor selection. Really? How's that working out for you?

If you're worried that these candidates might eventually want to, gasp, leave the firm, on their own terms (e.g. before you make them redundant), isn't that the price you pay for having a pool of talent you can draw from to get "fresh blood"? If everybody in the world works for the first firm that hires them for the rest of their lives, how would you be able to hire people?

If you're worried, ultimately, that these candidates might lead to uncomfortable situations as they challenge the status quo, are you not implicitly recognizing that your status quo is broken? And that, more importantly, that you want it to stay broken?

Embrace The Uncomfortable

I have a friend who has the theory that the wages techies earn working for Big Banks is compensation for the work and culture they have to endure. I'm not sure I disagree. But you can still find a way in a stultified culture working with boring projects to embrace technically skilled, entrepreneurial techies.

Entrepreneurial techies like facing new challenges, and continually want to apply their skills to making things better. Surely a Large Teutonic/Yanqui Bank has a lot of challenges? And surely hiring someone because they have the skills to design and build a greenfield project implies that they have skills that probably wouldn't be applicable 5 years down the road as the project is in maintenance mode? Why not allow the employee to continually find challenges internally?

Because speaking for myself, I find working on new challenges inside an organization superior to having to find them outside the organization. Your institutional knowledge, built up over extended work periods, is valuable to both sides; your reputation makes it easier to Get Things Done; your domain skills are continually built up. This makes it easier to apply your skills inside the same organization than constantly switching organizations. Why not encourage that by allowing the techie, every couple of years, to switch to a new challenge where their skills and attitude will make a bigger difference?

Independent-thinking techies of all stripes can also be used to help fix the broken parts of that same culture. With enlightened management, someone pointing out that "although this is the way you've always done it, it doesn't have to be like this" can be exactly the type of kick that an organization needs to actually realize that it's fallen into a process/culture-trap, where the wrong bits of the organization are self-perpetuating rather than the good bits. Questioning what's going on, thinking independently, that's the only way that you can ever break out of the bounds of group-think.

Independent, entrepreneurial techies can actually make the biggest impact in the organizations that fight against them the most: they're the ones that need them the most. Use them as agents for change, challenging assumptions, challenging entrenched attitudes, challenging technical group-think. Otherwise, your worst employees (the ones who can't really get a better job elsewhere) win, and you as an organization fail.

Epilogue: Teutonic Bank Is Still Hiring

When the recruiter told me why they had gone dark and ultimately rejected me, I knew that they would never find a candidate that would satisfy both the hiring manager and his boss; they had completely mutually exclusive requirements for this hire. I told said recruiter "in 3 months when they realize they haven't been able to fill the role and come back asking if I'm available, whether I have a job or not, I'm not available."

It actually took 4 months for that call. I wasn't available.

Thursday, July 30, 2009

You can has tweets

Now that my tenure at Big Bank B is drawing to a close (more of which anon when I actually have interesting technical bits to discuss), I've joined up with the global hivemind of 160-character inanity that is Twitter.

Although there have been completely unfounded rumors that I've been on Twitter for quite some time, allow me to reassure my devoted audience that these are completely incorrect. Nothing to see there, move along now...

You can find me tweeting as @kirkwy. (why such a strange handle? because every single other short permutation of my name was taken, and a short name gives massive advantage in tweet-for-retweet optimization). And if anybody knows Monty's handle, send it over so that I can stalk him in Twitter as well as the rest of the internet.

Saturday, July 18, 2009

Best Multi-OS AuthN Solution?

Dear Lazyweb,

I'm going to be building a heterogenous network consisting of Linux workstations and servers, Mac workstations and laptops, Windows desktops and laptops (maybe the odd server here or there), and maybe a few fringe operating systems. It's completely Legacy Free: nothing there at all. My goals are to make sure that all my various CIFS/NFS/AFS shares are sharing credentials just fine, and that users don't have to maintain multiple passwords.

What's the current vogue for this? Ideally I'd be running something on !Windows, but if I need to stick a Windows Server somewhere I'll do it. I'd rather not, but I will. If not ActiveDirectory, do I roll with LDAP? Which implementation? On which OS? Do I go with kerberos, or the LDAP/NIS for *nix logins? Remote/semi-connected users?

I can't believe I have to ask, but working for Big Companies has addled my Systems Administration skills slightly.

Thanks in advance,

P.S. I tried to ask this in ServerFault and before I could add content it warned me that the question was subjective and likely to be closed. So I didn't bother.