Here I am taking a shot at shorter form writing. Watch me write!
The biggest job/career related error I made this past year was going against my own policy and talking to a company I had a bad feeling about from the beginning. I’ve actually known about this company for a long time and think poorly of them. The thing is, a recruiter came along and told me how much they were paying for a high profile role they were trying to source. That number was higher than the honestly very high number I have in my head to go work for someone else at this point. So, against my better judgment and against my own stated policy of not talking to people unless I’m sure the company will be a good fit, I talked to them.
I’m a dumb-ass.
The one part of the conversation that sticks with me is the “big” question in the interview. Apparently, they’ve got a lot of separate development teams who have worked in multiple versions of Angular on different components that have to play nice together on the same page. As you can imagine that has caused problems. Apparently, they’re also kicking off some development using React. With that cluster in mind, they asked, how would I help solve the issues they were having with all these interoperability concerns at an architectural level.
My answer was simple. I said, “Stop doing that. Don’t use React and standardize on one Angular version.”
I could hear the frustration in the interviewer’s voice as he said, “that’s not really an option” as if pointing out the obvious solution to their self-inflicted problem was an insult to him personally. I could tell he wanted to hear some hair-brained technical solution (“I know we’ll write REACTANGULAR and it will normalize across all Angular versions”) that would rescue them from a disaster of their own making, without having to do hard work. He lead me down that path a little with some follow-up questions. The thing is, that’s precisely the kind of bullshit is never going to come out of my mouth. I wasn’t going to blow smoke up his ass just so that he can ignore the obvious solution. To me, when you’re doing something so fundamentally wrong, the best solution is to bite the bullet and do something fundamentally right to counteract it.
How they thought introducing an entire second library to the mix was a good idea is something that will forever confound me. They’ve already identified this as a problem and they’re willingly making it more complex. That’s insanity.
Suffice it to say, they didn’t like me for the role.
So many companies are obsessed with being on latest and greatest libraries and frameworks. If, like this company, you want to be a great engineering organization you should focus on doing great work. If you’re architecture is a patchwork monster it doesn’t matter if you’ve got the new and shiny. You’ve just got a new and shiny patchwork monster.