Ask HN: Career Advice for a Junior Developer
I am pretty sure that many people reading this are smart developers, and I consider myself one. I am a CS graduate and I have been working for 3 months as a backend developer in a company (in Italy) that delivers mobile and web apps, like many others.
The first problem that I'm facing is that my senior (and my junior teammates) constantly takes bad programming decisions that affects the long-term stability of the project, such as ugly db models or not following the single-responsibility principle for example. He gets to choose all the design but he's not the one coding so he also does not realise the errors by himself.
The second problem is that my company, like I think many small companies that work for clients, accepts projects with low budget and thus there is not enough time to properly write good code (we write js backends without testing >.>).
Obviously I'm not here just to complain. I thought about some solutions I can opt for:
- Work for a big tech company where there is less hurry to finish projects and there are clear coding rules to follow (like testing and so on). Good pay, less pressure but maybe no real engagement of designing complex systems (don't really know).
- Learn frontend technologies and try to slowly become a full stack freelancer. Good pay (hopefully), no boss and I get to design the systems. The problem is getting started, make the connections, build a resume and learn how to do it properly.
- Change from backend to frontend, where maybe design is not so important, though I don't really like it.
- Change to some other field like ML, but I would need some time to study and I don't think I could get a job without a master's degree (you tell me).
I'm really thirsty for your advice. I currently live in Italy but open to relocating pretty much anywhere in the world or work remotely. Thank you for reading this!