This content originally appeared on DEV Community and was authored by SDevr
Hi everyone,
I am a developer with a few years of experience and still working on my first full-time job.
Today, I want to share the experience I had in the last 3 years working as a full-stack developer.
Starts from Here!
We (not me) have been working on the project for almost 4 years to solve some manufacturing issues and digitize manufacturing tasks. The project was started by a few smart people with a small team of five developers.
Heavy research was done, plans were made, and things were developed in an agile fashion. A year of continuous product rollouts.
Soon after that, the developers started leaving, and three of them left within the following year. That's when two new developers were hired; one experienced and one junior.
One of the new hires was me. I joined the team as a junior developer. With not much experience at Angular, I started picking up the code fairly quickly.
Much to my surprise, the IT Manager and one more developer left right after the completion of my three months of probation.
What Happens Next?
The Last remaining developer (part of the original team) fills in the role of Manager. It becomes a team of two Devs and an IT Manager.
With no new hires, We kept the pace up for the next 2 years. And that's when things started to go wrong.
How?
Although the team got flattened, we somehow managed to keep the productivity up (for a while). New features, New rollouts. We were working and picking new projects as soon as one was done. Without waiting for the feedback, partially implemented modules were rolled out. As we get the feedback from previous modules, we'd have to jump back to work on those, then switch back to the current project and implement that.
By the end of my second year in the company, without anyone to supervise, I realized we kind of took everything for granted. Large PRs, far too many changes at once, many bug reports, almost no code reviews, and no proper testing.
There was little to no motivation to fix these issues. I was to be blamed as well. So, I decided to pause for a moment and start fixing some of these things. The timing was right as well. After the last major rollout, we were not expecting any major updates for the next couple of weeks.
So, How Difficult can it be?
I started encouraging and requesting my colleagues for code reviews. You might argue the team of 2 does not require reviews. But I think otherwise.
I started spending more time on PR Reviews, deliberately checking for bad practices, and looking out for potential issues. That did work to a certain extent. But as PR got heavier, my review process suffered.
Tried rejecting PRs, but that created a rift between us.
I tried expressing the performance issues behind running the CPU-intensive tasks from APIs. Eventually, gets approved by the manager.
There were other occasions where I felt like my opinions did not matter. This made me think twice before sharing anything within team meetings.
Conclusion:
During the whole damage control process, I became the bad guy among the three of us, received more criticism, got yelled at by the client without letting me explain the reason for the action from our team, and had disputes over multiple things with the network administrator with no support for resolutions.
I am the youngest of them and not mature enough to handle some things on my own. I struggled a lot without proper guidance. I am not sure how well things will progress, but for now, I have a lot to clean up.
I learnt a lot from my experience (and I am still learning from it). I started off writing this article as a journal. It was not meant to be shared, but having someone else's perspective can help a lot. So, counting on you... :)
This content originally appeared on DEV Community and was authored by SDevr
SDevr | Sciencx (2024-11-07T00:14:44+00:00) 3 years of development. Retrieved from https://www.scien.cx/2024/11/07/3-years-of-development/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.