A good software engineer has a degree in computer science. The best have a master’s degree.
When will they find out I’m self-taught and have neither?
The best engineers use Big-O to optimize algorithms on a whiteboard.
I have to Google what that means whenever it comes up.
A disciplined engineer writes their tests first and builds their code to pass them. They test multiple code branches, every time, and have remarkable code coverage.
My tests pass … sometimes. When I have time to write them and think about edge cases. Usually after the system breaks.
Architects speak with authority about complex topics like firewalls and network topology.
I handwave details and use real-world metaphors to describe architecture I think should exist.
Real engineers use Vim and the command line. They intuitively understand build tools, pipelines, and distribution.
I use an IDE to help with code navigation. I rely on GUIs to illustrate what’s going on behind the scenes. I copy/past my GitHub Action configurations.
How much longer do I have? Before they find out? Before someone names me for what I am …
… an imposter.