Within hours of finishing my last exam in grad school, I had my first job as a developer lined up. It wasn’t quite what I expected: I would be returning to my hometown and working at a local manufacturer because they had some software that just needed to be written.
Looking back, I can’t say what I had envisioned for a career in software. I certainly thought that I would be out on the West Coast somewhere and working on something for a company that made software as the product. If you had asked me what I had in mind for specifics, I would’ve shrugged at you and attempted to conceal a sharp stab of panic. “Somewhere” and “something” in the preceding sentence should clue you in to the degree of forethought I was employing.
In the first six months at that job, I felt like I had learned more than I did in my graduate program. It felt different, somehow, but I didn’t have the experience at that time to understand why that would be. Now that I am many years removed from that initial shock, I can say that the difference was in understanding the business and realized world of software development rather than the abstract world of the science of computation.
Those lessons were invaluable and equipped me for success for the rest of my career. I feared that I might have trouble going from such a small development environment to a larger company with more formalized development practices but this was not the case. The focus on the nuts and bolts of the reality of business was probably an advantage. The ability to do most of the work myself was definitely an advantage.
So with that, I’m kicking off a series of posts to discuss my early years in the world of development. I have a desire to do this because I haven’t seen too much written about the experience of the in-house developer and I happen to think that it’s a perfectly fine, overlooked career path.