I am a professional software engineer: a full-stack, polyglot, pragmatic, multi-disciplinary, computer scientist / software craftsman / software engineer. And probably a dozen other things.
But things weren’t always this way.
I started just like anyone, with my CS degree in hand and a job doing some development for a mid-size corporation’s operations departments. I hacked on things like payroll systems, IT inventories, and intranets. I was the ultimate code-and-fix developer. There were no tests anywhere near my code. I googled practically everything and slopped up the biggest balls of mud around. Just like so many others.
At some point, probably after another 2am support escalation or a midnight deployment on the day a project was due, I was probably muttering obscenities and talking to myself, and I said, “someone has to know a better way.” And that’s when I entered this alternate dimension where I found out: someone does know a better way.
Lots of people, actually.
I put in the time. I started spending hours and hours on top of work, and what hours my managers at work would allow, to read and read and read, and learn and learn and learn, and network and network and network–anything I could think of to become a software professional.
And it worked.
I’ve read dozens of books, watched hundreds of hours of video, sat through hundreds of hours of lectures, gathered on-the-job experience working for tech industry giants, and more. I became the 2017 Outstanding Master of Software Engineering Student at Seattle University. I walked out of there with my masters, the same one Steve McConnell has. Actually, he and I appeared together in a magazine interview.
But the point is it doesn’t come easy.
You have to put in the time, something I still do. I don’t expect to ever see a day where I’m not hungry for more, a day I stop learning. Only–I want to learn smart. I realize I stand on the shoulders of giants: people like “Uncle Bob” Robert C. Martin, Mary Poppendieck,
David Parnas, Bruce Eckel, Sandi Metz, Jeff Atwood, and many others. People who realize the importance of to our industry of things like expertise, professionalism, quality, and depth and breadth of knowledge.
In short, you don’t get to call yourself a software engineer without earning it. And without keeping it up. And that’s what I aspire to. Thanks for reading my humble blog and I hope you find it helpful. If you do, please drop me a line and I’ll try my best to reply.
Note — A longer bio is also available.