January 2, 2020culture leadership politics interpersonal communication
Consider the follow situation: Trevánte and Lupita are mid-level engineers on the same team and both happen to be studying Rust. The team they’re on has been writing java applications forever and the manager and lead of the team are fine with that and additionally neither the manager nor the lead keep up with industry trends or innovations. Trevánte and Lupita are aware, however, that Java:
- in 2020 decreased in google search frequency more than any other language (1)
- isn’t cool anymore, at all
- sacrifices security and performance for automated memory management and garbage collection
Trevánte and Lupita feel that to achieve better performance and security, and to develop a more relevant skill set, they should write their newest app completely in Rust. Both know that convincing the rest of the team is a long shot, especially their lead and manager. Furthermore they have both intimated to one another that such a debate may be upsetting to some of the more entrenched team members and given that Trevánte and Lupita are newer members, could even attract some passive aggressiveness or defensiveness their way; this might even damage the relationships they have with their lead or manager! Assuming for the sake of this example that they have completed their research, are sure the app could be improved by Rust and that there are no organizational blocks to using Rust, should they:
- a) Stuff their bold idea for a later date?
- b) Forget it about their bold idea altogether because why rock boat too much?
- c) Take a comprehensive approach to preparing for such a pitch and then execute on it, afterward letting the chips fall where they may?
Of course I wouldn’t be writing such a post if the answer wasn’t c, but why is it that my opinion is that Trevánte and Lupita should take this bold action and respectfully dissent against the dogma of their team? Before answering, let me first gently put to rest some arguments or opinions that could distract from the simple purpose of this post.
Why Are They On The Team If These Are The Psychological Conditions?
The “why don’t they just leave” argument is as unrealistic as it is deflecting in my experience: we all cope with non-optimal work dynamics. If anything, answering this argument is what this post is all about: maybe they can have an impact before they just jump ship.
They’re Being Judgemental: Maybe If They Approached The Team Nicely Things Could Change
Factors such as factioning, entrenchment, laziness, fear, etc. have throughout history blocked people like Trevánte and Lupita. If you haven’t encountered this yet just wait: you will. And if you never do, well, maybe you should look at that. Are you a follower? Are you checked out? Are you afraid of change?
Management and Leads Are In Their Positions For A Reason
Leadership is not necessarily synonymous with insight or acumen. Reflect on your current and previous managers and leads.
There Are Organizational Factors They’re Oversimplifying
This post assumes I am not, as stated above, i.e. there are no organizational blocks to writing this next app in another language that are not completely within the team’s control.
Maybe People Don’t Want To Work That Hard. Is That A Crime?
Legitimate point I feel: maybe people’s priority is not work, at least not at the level or interest of Trevánte or Lupita; maybe they simply want to punch their card and go home to their kids without having to learn a bunch of new stuff; maybe they don’t care about advancing their skillset because they’re near retirement; etc. etc. These are legitimate arguments and should be weighed against making big changes. These considerations, however, are not reasons for our duo to not present their case to the team!
They’re Just Following a Trend
I could have used many examples in place of developing with Rust, although I tried to back up such a thought experiment empirically via the PyPL footnote below and known performance issues due to Java’s GC algorithms. More importantly: trend discernment, if synthesized through study, can also be called scientific insight.
With these counterarguments to counterarguments out of the way let me answer why I think it is crucial that Trevánte and Lupita respectfully dissent.
Arguments for Respectful Dissent
Let’s start with the least subtle and (possibly) most immediately gratifying reason to dissent first: you might get promoted! If your insight is innovative or (the one managers love lol) saves money or has some other profound impact on your team or org you might be recognized for such an accomplishment and be compensated financially.
Increase and Modernize Skillsets
Dissent and disruption in the form of changes in engineering methodology will increase and modernize skillset on the team which is makes work interesting and increases job security by keeping with current trends, best practices, etc.
Invigorating the Team
If your team is in a rut and unconcsiously supporting an atmosphere of “checked outness” then making the strong case for some degree of orthogonality in methodology will likely shake your teammates back into focus and get them excited, or at the very least concerned, about developing this new skillset and completing this new project with grace.
Increase Others Respect
Respectfully, but strongly dissenting, even if not successful in outcome will increase others respect for you (and also one another because dissent is democractic); basically people will acknowledge that you have the courage to think and act independently and ethically under the right circumstances, which is of course a very attractive trait!
Educate and Help Others Grow
Again even if the outcome of well-planned-and-executed dissent doesn’t go your desired way, challenging team beliefs, whether those of management, leads, teammates or (especially) our own, is usually good because it forces us to let go of assumptions and be present with the fact that technology is always, always changing! And although resistance, passive aggressiveness or even outright temper-tantrums may flare up during such challenges if we can stand it, if it isn’t going to lead to us or others engaging in literal fisticuffs then I say “go for it!" because initial emotional reactions are often just our attempts at coping with change and deep down we are always grateful to have had help changing.
Show Other Teams That Change is Possible
Debate and in general democracy is infectious and other teams will likely see, hear or realize that you and your teammates are “getting down to brass tacks” about how and where to head next and will be influenced by such confident, safe and deep interpersonal communication that they may attempt or increase the same on their own teams and that will make the whole org better.
Actualize and Increase Democracy
I’m big on democracy (and you can read about why in my post here) and of course dissent, as I hinted at above, will absolutely increase democracy within the team because at the very least it will shake things up and in turn bring others out of their shell or further alert them they are in their shell (also useful), but it is very likely that such rigorous and intense debate will not only strengthen the bonds of the team, but demonstrate that the team is an environment where all different types of people can come and put forward ideas that can be examined, discussed, adopted, eschewed or tabled.
(Dramatically) Improve Communication
Reality check: humans are terrible at effective communication. Sure we love to blab, and I include myself in this criticism, about bullshit, but when it comes down to expressing what is important: we suck. And if you’re upset at reading this lol, then uh…you probably needed to read it. And of course work could already suck and so then you throw in shitty communicators and to-boot ones so proximal: our teammates, and well this could really be a disaster for terribly ineffective communication. But this post isn’t about jumping headlong into some belligerent argument with our team to try and ram down their throats why we “have to use the new hotness”; rather, it’s about taking a thorough and prepared approach to presenting something radical: and being convincing and commanding while doing it! And in doing so we can examplify how to communicate something that might be potentially disruptive in a way that is direct, but enlightening; such an example will help your team improve commmunication!
Etc. Etc. Etc.
Additional reasons for dissent are making the team a “safe space”, self and other empowerment, increasing tolerance for uncomfortable situations, etc. etc. and thus while arguments can be made against radical dissent like “what if they get fired?", “what if they can’t handle the team’s criticisms and have a meltdown?", “what if it schizms the team?", in my opinion these potentially negative outcomes do not outweigh the potentially postive ones! Hence Trevánte and Lupita should go for it and Part 2 is a step-by-step breakdown of how to prepare and execute successfully on radical dissent.
1 - From the PyPL index: “Python is the most popular language and was search the most in the last 5 years (15.3%) while Java searches declined the most (-6.3%) (_see graph below rankings).
2 - By job safety I simply mean that you have the skillset, or other, resources, to, if necessary, leave your job and fairly easily find another; if this is not the case then this issue is more complex and beyond the scope of this article.