roymosby.me

Why software engineering

Published: Fri, Dec 18, 2020

workflow sketch

While I may be a little older than the typical person transitioning into software development, I am driven by the notion that everyone is on their own journey. Mine has taken me through a 20-year military career in signal and to nearly 15 countries. I am not ready to stop yet either.

Thoughts of becoming a software engineer have been on the brew for quite some time. The notion was planted when I was handed responsibility for maintaining my unit's intranet portal. It had a built-in workflow modeling tool that automated routine digital processes.

This tool introduced me to thinking with formal logic. Like all other computer technologies, the workflow tool could follow instructions and execute very fast but Couldn't. Think. For. Itself. The tool did exactly what it was told; it could not interpret my intentions. If I was trying to keep a field on a form continuously updated and didn't tell it how frequently to do so, it would happily call a service repeatedly. There is nothing like getting a curt notice from DISA (this happened to me!) that I bogged down a SharePoint server farm.

Aside from getting admonished by a major governmental agency, I enjoyed the challenge of making workflows. I thrilled in translating business processes into real digital processes that work on their own. As I continued to design workflows, I encountered many programming concepts- variables, loops, if-then statements, state machines, and more.

This tool had its limitations though. The workflows were built on a web interface where elements of functionality were added to a canvas and then configured. This could be a slow process because it had to communicate with SharePoint servers with every edit. As I attempted to implement more complex logic, it became apparent that it would be much quicker to write out the instructions than it would be to configure interconnected widgets.

Separate from workflows, I needed to be able to display content that was found on the portal. While SharePoint has tools to build web pages, they were hardly ever adequate. One could display calendars, document repositories, and basic text and pictures. The resulting pages were utilitarian at best but usually ended up looking amateurish or even downright ugly. I found that SharePoint provided access to the pages' source code. I could use basic HTML and CSS to build professional looking pages.

Even this was sometimes not enough- I needed to be able to manipulate information stored online and display it in some visual manner. Enter JavaScript. Oh, the power! I could grab a text-based list and process its contents to generate an interactive chart. I could also build a complex landing page that could be managed by a non-technical person by adding or removing entries to a SharePoint list.

Between the workflows and rudimentary web development I was hooked. I wanted to make projects from scratch rather than configure things in a web interface. After retirement from the Army and a 3-year stint as a knowledge management analyst, I finally found an opportunity to take what I know to exciting new levels. I am grateful that I can dedicate time to studies at Flatiron to become a software engineer. Always keep growing!



Portrait of Roy

I'm open to work!

  • Hi all! I am seeking a remote engineer position that can leverage a unique history of IT experience with several years of developing web applications.
  • I've worked most recently with JavasScript, TypeScript, Python, PHP, and Ruby but am game to learn other scripted languages.
  • Most importantly, I am all about making positive impact at organizations that see inclusivity as a strength rather than an obligation.

If you have room on your team and need someone that can contribute beyond just code, hit me up!