Being Ignored & Building Software
I joined my first startup as the second employee of the newly-formed email marketing team.
This was my first software engineering job, and I received no guidance in software engineering best practices.
These best practices cover the “how” of creating software products, including how to release new versions, logging, monitoring, and alerting when things break–stuff that is called “devops” or “site reliability engineering” these days.
I knew none of this and was stumbling blindly, rolling on the floor in sadness when I’d mistakenly drop a table from the database.
Six months after I joined the company, a bearded fellow came on board. He was an MIT grad student & ex-startup founder. He was seated near me in the cubicle-strewn office space.
His name was Joe and I really liked Joe. Joe was quiet and highly regarded by the most senior folks at the company who had recruited him. And so, in trying to learn my way through software engineering I attached myself to Joe.
I would approach Joe’s desk & ask questions, bringing him the multitude of problems I encountered when creating software for the first time:
- “How come I can’t connect to this database?”
- “Why is this taking so long–how can I make it faster?”
- “Is it safe to run this command?”
Joe taught me great lessons–primarily by telling me to go F myself.
Maybe not those words specifically, but he would ignore me. His eyes would remain focused on his monitor as I would walk up to him to ask him questions. He’d keep clicking at his keyboard as I’d try and impose my presence in his sentient line-of-sight.
I failed to understand a simple truth: he was working on stuff that he was obligated to get done, and I was committing theft. I was a selfish, self-absorbed coworker who was trying to enlist their assistance in my tasks.
Learning this truth is critical to maturing as a software engineer.
Joe was formative for my software engineering career. The simple act of ignoring me did more to improve my behavior around learning software engineering than if he had answered my questions.
If you are a junior software engineer then being ignored by your engineering colleagues is a critical maturing process for how you approach problem-solving.