Cracking the Code: Seeking Inspiration Beyond Software Monotony
So … I’m bored with being a softare developer.
But first, a bit of a backstory
Phase 1
I’ve been a software developer since 2005. I started at a small startup in a small city where I grew up where I was employee number 7. Even though I went to school for this, I had no idea what I was doing when I started. Well, “no idea” may be a bit harsh. Essentially, I would often get anxious because I was given problems to solve that I had no idea how to solve. Being my first job, this was usually every problem. Although this essentially what the nature of software development is, it took me years to realize and get comfortable with the idea of the unknown.
Over the course of the next few years, I learned and advanced at that company, went to another company, and then my last stop in that small city was a large hospital where I was hired to do COBOL (Yes, COBOL) but morphed that into web development using some updated (at the time) technology.
Phase 2
Around 2010, I got married and I moved to Toronto, Canada. Toronto is a big tech hub so I had a choice of jobs. I ended up landing at a “fast paced” startup. Relative to the Buffalo start up I worked at, this was a larger company where I was working on analytics tools for analyzing social media engagement. That company ended up laying off a bunch of devs and other roles and I was caught up in that after only being there for a few months. Still, it was good experience while I was there.
After that, I then went to an interesting company. A highly trafficked internet “dating” site. This was interesting because it was the first time I worked at a company that had millions of page views per day. There was lots of tech to learn/know/understand so a lot of growing took place.
All of this time my main method of development was PHP, MySQL, a little but of JavaScript and some CSS. After a well publicized hack of that company, things changed. This was one of the first highly reported on data breaches, and the company paused most development, there were a lot of departures (including the CEO, CTO, etc). There was a lot of downtime.
Phase 3(a)
At this point (2016), ReactJS, Node, and JavaScript in general was blowing up. Like most devs, I “knew” JavaScript, but didn’t really KNOW it. I decided to learn JavaScript, React, and node all in. It was exciting at the time because it was new, and a lot of jobs were coming online for that tech at the time.
I stayed at the company for a year working, but mostly learning this new paradigm. After a few rounds of layoffs I finally got caught up in one. So I took my package and wasn’t too worried because in a sense, I had been interview ready for a while at this point since my main focus was learning and hiring for new tech and part of that was focusing on interview prep.
About a month into my layoff, I got a job offer that I have remained at to this day. That job I started in September 2017 and am still there as of this writing (September 2023). Initially the job was great as it was somewhat laid back because it was a big company. That was a drastic change from the startup/mid-sized companies I was at most recently. But at the same time, I was able to learn and had steady work. After being there for a few years I was moved to a large project building out a full UI and API checkout system using React and Node (Replacing VueJS and Ruby).
This has been a fun learning experience which not only gave me the opportunity to learn about developing a full E2E experience, but also planning, organizing, designing the system, communicating with stakeholders, managers, director and even VP levels. It was an all encompassing project that spanned both tech and business.
Phase 3(b) The Current
A few things you may have noticed. After all of this time I’m still a developer. There could be worse things in the world to be, but I haven’t progressed much beyond where I was a few years ago. Of course, I have progressed in knowledge, but not what I could add to my resume as far as title goes. But here is the issue. My next step is to manage/lead. I’m not sure I want to do that though. At the company I am at, going to that next level means much more time spent in meetings. So I get a better title, but at the same time, I would probably stunt my learning. What I mean by that is, I would not be as heavily involved in implementations as I would like.
I could always search out a new company and find a better role. The issue with that is interviews are becoming ridiculous. The last interview process I went through was in fall 2021. It was 6 separate interviews. Each meeting with an individual person. At step 5, I was told “I was not a good fit”. There is more I can say on this, meaning the interview process in tech, but will leave that for another day. Even if I were to go somewhere else, I could be in the same situation as described below.
This is where the boredom comes in. As a developer I have been building the same thing since 2005. Everything I build, everything most companies/developers build, is by nature, some form of a CRUD app. In some cases, I’ve built the same app multiple times at the same company. The issue is, websites are fairly standard things. The amount of “killer features” that can be added are few and far between. So what do you actually work on? Well you build, rebuild, tweak, rebuild more, tweak again, etc. You do this with the same tech, sometimes with new tech (but it’s really the same thing), and you do that over and over again.
After doing this many times, I believe I am looking for a change. Or maybe I don’t need a change, maybe I need a new direction. Enter the cloud. Wait, enter cybersecurity. Well, maybe a mix of both. But also development. But then again, maybe some machine learning and AI as well.
See, this is the issue. I want to do a lot and have been having an issue picking one thing, sticking with it, and working through it. It also doesn’t help that many roles you want to go for include a mix of all of the above in some form or another. It is good to know a little bit about each topic, especially being a developer, but then you don’t really master anything and just have broad knowledge. This can be good, but then at some point you are also doing a lot of leaning on experts in each domain.
Phase 4
Many people are motivated by different forces. With so much to learn you can almost become paralyzed by what to learn/do next. I’m going to pick one thing and just stick with it. I’m already a developer. But at my current role, I have to do a lot of devops and cloud related things. Dev work is fairly simple for me. Of course there are the issues here and there that take more time than you expect, but that is fine. What ends up taking more time is dealing with pipeline issues, error tracing, finding out where I need to click in AWS or GCP. I don’t do that stuff day to day, so when I have to, it ends up taking more time than needed.
As a developer, I want to improve that aspect of my abilities. While I’m working on improving that, I may as well prep for some certifications along the way. There are a lot of opinions of certifications both positive and negative. My opinion on them changes from time to time, but the benefit of them for me is giving a clear focus to what I am going to learn and the path I need to take to learn. The actual test and certification is almost an afterthought to that point. As long as I learn the skills, that is fine for me. The certification is padding to that knowledge.
Why start with cloud? To me, cloud is all the stuff we used to do ourselves at home as young devs. Setting up a server, building an app, hosting the app, and more. Now, it’s just getting used to the jargon of the big cloud providers and doing things their way. Of course, there is a bit more to it, but it’s not all that groundbreaking. They are the hosts, and you are building and pushing to their platforms.
Doing this is going to get me once again involved in networking, hosting, VMs, containers, security, and more. All of those projects that I found boring, I can rebuild as POCs in the cloud.
Wait, I’m rebuilding the same stuff again? Well, maybe or maybe not. What will my study path be and what projects could I work on that will make this investing?
I think it will go something like this - Embarking on a Journey: Google Cloud Digital Leader Certification Preparation
But first, a bit of a backstory
Phase 1
I’ve been a software developer since 2005. I started at a small startup in a small city where I grew up where I was employee number 7. Even though I went to school for this, I had no idea what I was doing when I started. Well, “no idea” may be a bit harsh. Essentially, I would often get anxious because I was given problems to solve that I had no idea how to solve. Being my first job, this was usually every problem. Although this essentially what the nature of software development is, it took me years to realize and get comfortable with the idea of the unknown.
Over the course of the next few years, I learned and advanced at that company, went to another company, and then my last stop in that small city was a large hospital where I was hired to do COBOL (Yes, COBOL) but morphed that into web development using some updated (at the time) technology.
Phase 2
Around 2010, I got married and I moved to Toronto, Canada. Toronto is a big tech hub so I had a choice of jobs. I ended up landing at a “fast paced” startup. Relative to the Buffalo start up I worked at, this was a larger company where I was working on analytics tools for analyzing social media engagement. That company ended up laying off a bunch of devs and other roles and I was caught up in that after only being there for a few months. Still, it was good experience while I was there.
After that, I then went to an interesting company. A highly trafficked internet “dating” site. This was interesting because it was the first time I worked at a company that had millions of page views per day. There was lots of tech to learn/know/understand so a lot of growing took place.
All of this time my main method of development was PHP, MySQL, a little but of JavaScript and some CSS. After a well publicized hack of that company, things changed. This was one of the first highly reported on data breaches, and the company paused most development, there were a lot of departures (including the CEO, CTO, etc). There was a lot of downtime.
Phase 3(a)
At this point (2016), ReactJS, Node, and JavaScript in general was blowing up. Like most devs, I “knew” JavaScript, but didn’t really KNOW it. I decided to learn JavaScript, React, and node all in. It was exciting at the time because it was new, and a lot of jobs were coming online for that tech at the time.
I stayed at the company for a year working, but mostly learning this new paradigm. After a few rounds of layoffs I finally got caught up in one. So I took my package and wasn’t too worried because in a sense, I had been interview ready for a while at this point since my main focus was learning and hiring for new tech and part of that was focusing on interview prep.
About a month into my layoff, I got a job offer that I have remained at to this day. That job I started in September 2017 and am still there as of this writing (September 2023). Initially the job was great as it was somewhat laid back because it was a big company. That was a drastic change from the startup/mid-sized companies I was at most recently. But at the same time, I was able to learn and had steady work. After being there for a few years I was moved to a large project building out a full UI and API checkout system using React and Node (Replacing VueJS and Ruby).
This has been a fun learning experience which not only gave me the opportunity to learn about developing a full E2E experience, but also planning, organizing, designing the system, communicating with stakeholders, managers, director and even VP levels. It was an all encompassing project that spanned both tech and business.
Phase 3(b) The Current
A few things you may have noticed. After all of this time I’m still a developer. There could be worse things in the world to be, but I haven’t progressed much beyond where I was a few years ago. Of course, I have progressed in knowledge, but not what I could add to my resume as far as title goes. But here is the issue. My next step is to manage/lead. I’m not sure I want to do that though. At the company I am at, going to that next level means much more time spent in meetings. So I get a better title, but at the same time, I would probably stunt my learning. What I mean by that is, I would not be as heavily involved in implementations as I would like.
I could always search out a new company and find a better role. The issue with that is interviews are becoming ridiculous. The last interview process I went through was in fall 2021. It was 6 separate interviews. Each meeting with an individual person. At step 5, I was told “I was not a good fit”. There is more I can say on this, meaning the interview process in tech, but will leave that for another day. Even if I were to go somewhere else, I could be in the same situation as described below.
This is where the boredom comes in. As a developer I have been building the same thing since 2005. Everything I build, everything most companies/developers build, is by nature, some form of a CRUD app. In some cases, I’ve built the same app multiple times at the same company. The issue is, websites are fairly standard things. The amount of “killer features” that can be added are few and far between. So what do you actually work on? Well you build, rebuild, tweak, rebuild more, tweak again, etc. You do this with the same tech, sometimes with new tech (but it’s really the same thing), and you do that over and over again.
After doing this many times, I believe I am looking for a change. Or maybe I don’t need a change, maybe I need a new direction. Enter the cloud. Wait, enter cybersecurity. Well, maybe a mix of both. But also development. But then again, maybe some machine learning and AI as well.
See, this is the issue. I want to do a lot and have been having an issue picking one thing, sticking with it, and working through it. It also doesn’t help that many roles you want to go for include a mix of all of the above in some form or another. It is good to know a little bit about each topic, especially being a developer, but then you don’t really master anything and just have broad knowledge. This can be good, but then at some point you are also doing a lot of leaning on experts in each domain.
Phase 4
Many people are motivated by different forces. With so much to learn you can almost become paralyzed by what to learn/do next. I’m going to pick one thing and just stick with it. I’m already a developer. But at my current role, I have to do a lot of devops and cloud related things. Dev work is fairly simple for me. Of course there are the issues here and there that take more time than you expect, but that is fine. What ends up taking more time is dealing with pipeline issues, error tracing, finding out where I need to click in AWS or GCP. I don’t do that stuff day to day, so when I have to, it ends up taking more time than needed.
As a developer, I want to improve that aspect of my abilities. While I’m working on improving that, I may as well prep for some certifications along the way. There are a lot of opinions of certifications both positive and negative. My opinion on them changes from time to time, but the benefit of them for me is giving a clear focus to what I am going to learn and the path I need to take to learn. The actual test and certification is almost an afterthought to that point. As long as I learn the skills, that is fine for me. The certification is padding to that knowledge.
Why start with cloud? To me, cloud is all the stuff we used to do ourselves at home as young devs. Setting up a server, building an app, hosting the app, and more. Now, it’s just getting used to the jargon of the big cloud providers and doing things their way. Of course, there is a bit more to it, but it’s not all that groundbreaking. They are the hosts, and you are building and pushing to their platforms.
Doing this is going to get me once again involved in networking, hosting, VMs, containers, security, and more. All of those projects that I found boring, I can rebuild as POCs in the cloud.
Wait, I’m rebuilding the same stuff again? Well, maybe or maybe not. What will my study path be and what projects could I work on that will make this investing?
I think it will go something like this - Embarking on a Journey: Google Cloud Digital Leader Certification Preparation
Great story!
ReplyDelete