Search This Blog

October 11, 2020

When your Business says, "Tech ain't Rocket Science"


As a Tech-Leader, how do you respond when business smirks and dismisses your challenges in tech saying, "it ain't rocket science"? This post is my attempt of story-telling the complexity in Tech to the ruthless and impatient Business that dismisses it as just being CRUD and is no rocket-science. 

I am a tech-entrepreneur who has made bets on tech, business ideas and its intersection. I have failed for various reasons which is out of scope for this post. Now that introduction is to tell the Business that I understand where their frustration comes from. So I think it is important that they believe in Tech Leadership and its challenges. Not always can this leadership be right. It will go wrong in its bets from time to time. But, hell Business too gets things wrong from time to time, don't you? We should learn to see failure as not the end of a road but only a bend, albeit a hairpin bend at times that if not given due diligence, it can be catastrophic. So what is so crazy about the Tech World that the Rocket Science isn't having? My answer would be EVERYTHING! In Rocket Science the problem space is fairly well defined in that it is mostly science. In the Tech Space, it is oscillates between being an art at one point in time and being science in another circumstances. In Tech Space the choices are umpteen, the shines are mostly mirage and the pitfalls are hardly visible until experienced. Now that is the shortest way in which I could describe the challenges in Tech leadership. 

I can illustrate the tech landscape with my very own little experience in the realm of mobile app development. I had built a couple of Android applications as test of my ideas to understand its market. The Apple iOS ecosystem was a beast on its own and so was Android; each accelerating at a far greater pace in evolution than it is anticipated to be. Additionally the mobile ecosystem in itself had too many variables that you could hardly bet on. 

Take the tangent of, platform for developing mobile mobile applications -- a couple of years back it was native Android/iOS, or cross-platform mobile app development frameworks like Ionic, jQueryMobile, Adobe's PhoneGap, Sencha, Xamarin etc. Today, the very native platforms evolved so much that yesteryears app is just dated to be polite. Add to it Kotlin became popular in the native Android development space, because it is a much better language than Java in terms of maintainability and brevity. The iOS space witnessed Swift replacing Objective C. The community adopted these for good and this was fairly predictable.

But not always is the community adoption a predictable thing. And not always it is wise to go with the crowd, for it might turn out to be a pop-culture thing. This is sort of a high-risk high-rewards sort of thing, in the business parlance. Take the case of community adoption in the cross-platform mobile application development platforms/frameworks. The Facebook's introduction of ReactNative for cross-platform mobile app development became a game changer in this space. Frankly, I didn't bet on it and I was so wrong about it. With the community going ga-ga for it, I had dismissed it as pop-culture; call me a conservative for that and I take it. But wait, this time around, the community made a huge difference by coming up with a ton of open-source tools and components, that I would say had surprised Facebook too. Or Facebook perhaps was anticipating this development from its earlier success with open-sourcing ReactJS. The adoption rate and good produce, prompted Google to come up with Flutter wanting to disrupt this space. While ReactNative (aka RN is based on React.js), Flutter is based on Dart programming language. Taking a stop to reflect back, as things stand today, yesteryear's cross-platform frameworks (like Xamarin, Sencha etc) is just gone from the scene of relevance. Had you invested in those tools years back, you would have had to re-invest in learning the new ways of development in this space. This is tech; the crazy tech, where the craziness of the tech wave comes from the community, which literally can change directions of the wave. You got to ride the wave, float to flaunt, flop but float, fasten and flip, fence from fall, and fall but survive! 

I can share a similar story in the realm of backend development, devops, frontend, etc. but hope this story is more than enough (at least it worked for me in the past) to convince our Business about what it means to ride the Tech wave.

Tech is bloody hard to keep up with. Tell this story of evolution to anyone who is comparing it to Rocket Science. Tell them that Rocket Science don't change as much as tech do. In Rocket Science, you learn that there is so much more to discover in a supposedly closed domain. In Tech, you got to both learn and adopt within the constraints of time, opportunity, challenges and God damned people politics. The bad news is we do fail, and fail often. The good news is we can go past it learning our lessons.

2 comments:

  1. Let's first rename tech 'Mobile and Web Application Development', because I think this is what you have in mind. I hate this 'tech' expression implying web and mobile development is the most technologically-intense area. It is not.

    I had the privilege to see from inside both a big engineering aerospace project and large application developments (~10M€ projects). My feedback is that engineering projects are more complex. To compensate, those projects do a lot of planning, spend days thinking about development logic, have methods to capitalize on decades of experience, add new technology only when necessary (keep what always works) and staff those projects with many people wih decades of experience.

    Compared to that, many software development teams look like an amateur mess. No wonder people are frustrated about this.

    ReplyDelete
    Replies
    1. Hi, thanks for pouring in your thoughts. I respect that. We all have our share of experiences good and bad. In retrospect, I feel fortunate enough to have been in large engineering projects in aerospace domain, and also go through the grind in the development of large applications in the domains like banking, call-center, automotive etc. That is to say, I know the murkier and/or stupid things that happens in the upfront planning and its implementation attempts. In fact, the executive leadership as well knows about it in at least half the occasions. What I have learned from working with the genuine leaders is to fight bias and focus on the challenge to be solved. This is one incredible lesson that I learned early on from the executive leadership at Honeywell. I have come to understand that we are living in a world of friction and bias. You have your bias in generalizing on how amateur "software development teams" are as against "engineering teams" based on your good/bad experience. You also have your bias on how things are to be named in the context of my blog space and my blog article. There are biases we ignore, and then some we tend to fight either by confronting or by conversation.

      Like I mentioned in the beginning of this post, this one is an attempt that I tried to help the business empathize with my teams by educating them of our challenges. Of course, how one responds depends on his state of mind then and how his/her chemistry with the business is.

      There are also occasions, where I have confronted the business asking them politely how much they know about rocket science and how much they know about application development to compare these. Sometimes, I merely say, there is no point comparing apples and oranges.

      Again, thanks for not just stopping by but also sharing your experience and thoughts :)

      Delete

Like it or hate it, feel free to share your feedback. Cheers!