I have now worked as a software developer for over 10 years. During this time I have had several profound moments of self awareness when it comes to cognition. Most of these moments happened when working closely with a coworker who seemingly used the opposite problem solving "strategy" (in terms of cognition). Normally, awareness of how we think tends to be unconscious - we just do it, in whichever way comes most easily to us, and maybe we might reflect on it later. My interest in MBTI has helped me become more conscious of how I think, and occasionally, if I slow down and notice, I can realize when I'm preferring a certain cognitive function over another.
As an INTJ, I tend to rely on Ni (introverted intuition) often. I excel at reverse engineering, tend to "see" the conclusion first, then piece together information (jumping around, out of sequence) until a path to the goal finally materializes. The vast majority of them time this process is totally out of my conscious awareness. Before I started recognizing it consciously, I had several baffeling interactions with coworkers and project partners. I often wondered why someone was getting hung up on a detail or step that I viewed as irrelevant to the end goal (perhaps this was Ni - Te pushing to come to an objective conclusion). Sometimes I would think something in frustration along the lines of "don't worry about that. We'll figure it out later - meet me at the next part". This usually occurred when my coworker preferred their Si (introverted sensing) function. Si tends toward step by step processing, concerned with gathering details and applying information from previous experiences. It helps with tasks that require a methodical approach where current and past data is compared to better inform decisions.
From my perspective, Si is like a having a strongly typed programming language running. It enforces type rules and catches errors at compile time in order to prevent errors later. Ni is opposite, allowing implicit type conversions, which means faster compile time but probably more errors.
With more experience and more self reflection and awareness, I started to recognize Ni vs Si conflicts playing out during my interactions. I realized that sometimes that detail the other person was hung up on had the potential to become important later, or reveal a different path altogether if explored. To put on the brakes, I need to activate Ne-Ti and explore the possibilities in the process with more curiosity. Here are a couple stories that illustrate this phenomenon and hopefully show my growth as problem solver and software developer too:
Story 1: Gathering Evidence vs "Psychic" Phenomenon
One time the whole team had to jump in to solve a problem in production. I immediately recognized the location of the problem as being related to a recent change I had seen in a merge request. The change touched code that had the potential to effect that specific functionality of the app. I looked through the recently merged changes and immediately picked out that one. A quick glance at the code confirmed this change could have the result we saw in production (as I visualized it). "This is the one" I said. If we revert this change we can fix this issue. I jumped on a call with another team member and told them my thoughts with confidence. They insisted we go through each recent change one at a time to identify which change caused the issue. It felt like my insight was dismissed or ignored completely. As the pain stakingly slow and tedious process dragged on, I could feel myself becoming increasingly annoyed, and anxious as we got closer to the change I originally identified. Finally we reverted that change and sure enough it fixed the issue. I could feel the "I told you so" raging behind my pursed lips, but I also knew my coworker was right about the process. We required concrete evidence that proved without a doubt that that specific change was the one responsible for the error. Unfortunately "I just know" or an explanation about what the code does would not be enough to convince anyone who didn't know the code intimately or didn't believe in the power of the Ni cognitive function (haha). This experience helped me realize the value of a methodical approach to problem solving especially when there's a need to justify a decision with concrete proof.
Story 2: Problem Solving Together from the Outside In
I took on a time sensitive task that involved remote configuration. A process totally new to me. I had a very short window to learn how to do it, get it done and into production. I had pieces of the puzzle floating around in my mind (and literally open in a number of tabs in my browser.) I started building the metaphorical puzzle.... At first glance it looked simple - but as I examined further I found several missing pieces. No problem. I asked around a couple questions, got some answers, including step by step documentation, and forged ahead. Then a coworker contacted me interested in learning how to do the task I was working on. I jumped on a call with them and I tried to explain my progress so far, but sheepishly realized I had no idea what I was doing (it's also a very Ni stereotype to be unable to explain your process). I jumped around to various steps...Perhaps my coworker noticed but they didn't let on. They were reading the step by step document and asking questions about each step. I realized I was ahead, but had skipped a couple important steps. We did those things as we went (all while screen sharing). Eventually we completed the task. In the humble realization of just how many important steps I had missed, I felt a lot of gratitude for my co-worker and their approach to the task. I felt as if we had literally completed a puzzle together - like they had joined me just at the right time to hand me the missing pieces. Upon further reflection I realized most of the steps I had figured out were at the end of the process, like I had naturally been working backwards. Meanwhile my coworker stepped through the process from the beginning forwards, and we happily met in the middle. Later, to my surprise, my coworker thanked me for the knowledge transfer.
No comments:
Post a Comment