Pete Acevedo
Available
← Writing

Some Rambling Thoughts from a Young Dev

I’ve worked as a developer for over 3 years now and I’ve “owned” a legacy project that was shipped before the iPhone for most of that time. One complaint we regularly receive is about why we don’t release new versions more often, and why changes to the code have been virtually outlawed since I took it over.

There are many reasons we don’t cut new releases for that system, one being that it is a thick client that needs to be rolled out through our internal software distribution process to thousands of internal engineers. It’s a super cumbersome process and in all honesty hasn’t shown that it would be worth the work to the team, given that most of our users are engineers first and software users a distant second. We regularly hop on calls to walk people through downloading Excel files. There is no guarantee that our users would even download the newest version no matter how often we announce it.

I personally think the most important reason though is that my team took this app over during a period of big changes in our IT org. The engineers who had supported it were moving on and had very little time left to teach a greenhorn how to support a true legacy application. I could hardly blame them. So when the official transition happened in October of 2023 the application was taken over by someone with about two months of dev experience and none of it in legacy C# and .NET Framework.

I taught myself C# and .NET Framework and I spent days reading code and doing nothing else. I can’t say that it helped, but it did light a fire under me because I felt an obligation toward the people that needed this to work. If this app broke it could stop very important and very expensive processes from moving forward and render entire workdays useless for many engineers across the internal user base.

In the last three years, we have made many changes to underlying logic like stored procedures to fix bugs, speed up queries and make some fairly large QoL changes, but it still feels like a failure to me. Part of me feels like I never properly supported this application because I never cut an official release for it. I think that this has definitely been a chip on my shoulder for the last three years because it’s bothered me to no end. I think that this all worked out in the end though.

Three years after starting at the company and almost 3 years after taking this application over I architected the next generation version of this system all by myself. I took it through our architecture review and got it approved, and I even presented it to our infrastructure team all as an early career dev. I got approval and have been team lead for close to 8 months as of the date of this post and we are working at a breakneck pace to get it shipped. I have 3 developers under me that I have worked with to develop this as quickly as possible and ETA is as soon as 1 year for a new web based version of the app.

I have been fortunate enough to meet many people and create connections with many of them that have a vested interest in seeing this new version of the app succeed. I’ve worked with them to set up Slack channels, meetings, demos, and all kinds of other things to ensure that we create a nice cool new tool, but one that actually serves the users that use it. We’ve seen many things ship within the company, and outside of it, that are cool novelty items and are also (in a practical sense) completely useless!

I’ve played PM, Dev Lead, Architect, and many other roles for this project to see it get off the ground and now hopefully to see it ship successfully. Things happen that kill projects all the time so it definitely feels like our heads are under a looming axe at all times. I can definitely say though that this is the work I am most proud of and younger, naiver me would be proud to see where I’ve taken this app that is old enough to vote. I still feel disappointed about never getting to master the legacy system and cut an actual release, but it was a monster that was simply way too large for anyone to really pick up from scratch entirely. This is something I think about every year right around this time. It’s probably always going to have a special place in my heart as it was my first application.