3 ms·
As a junior you're going to struggle for next 5-10 years to get a hold of all the basics. And even that under ideal circumstances assuming you'll be able to dea
by crnkofe 5y ago
As a junior you're going to struggle for next 5-10 years to get a hold of all the basics. And even that under ideal circumstances assuming you'll be able to deal directly with production, DBs, devops, maintenance, FE, leadership, make your own mistakes etc. etc. So having an expectation that in 1 year you'll be a senior sounds very naive and if I'm reading this correct that's how you feel about it.
Mistakes happen in general to everyone in SW development - seniors will make less of them but that doesn't mean they won't happen and that they won't be costly. Generally I'd say if there were serious setbacks to the entire project I'd say something is wrong either with the development process or with communication. Lack of leadership can be a pain but although not ideal I've worked and thrived in such an environment as well.
Ideally your team should catch and prevent bad things from happening before production. This begs the question what kind of testing you do both yourself and as a team (Do you have QA? Do you do automated acc. testing? Do you do integration testing? Do you do code reviews? What about unit testing?). Lack of testing will generally lead to a variety of bugs. Having a ton of untestable legacy code on board also makes development hard in general.
Second thing I'd ask is whether you verify the approach you take to solving the task at hand with your teammates? It's easy to take a few wrong decisions especially if hard legacy is involved. It's in general better to address the approach to solving the problem early and involve seniors even if they don't have experience with the codebase.
Also regarding dealing with production it sounds to me like they simply unleashed you into prod. environment. Giving a junior prod. credentials to me is like throwing him under the bus. I mean what could possibly go wrong there? :)
It's relatively easy to break prod. without experience. I suggest getting somebody to assist with production deploys if you don't feel confident. Setup a videocall with somebody from operations/senior dev., share screen and make the relevant changes. Also if somehow you managed to easily mixup QA/prod. that would also imply separation between environments is not that great.
Also if you want to improve the process consider going back and writing some post-mortems. Understanding what and how went wrong and addressing the issues means it's less likely they will happen again to you or another unlucky junior.