Feeling lost as a junior dev in Italy.
Hi, first time posting on reddit so sorry for any mistakes.
I'm 26 (about to be 27), and have a bachelor's in CS, I've always liked low level programming and I've finally managed to land a job in that field something like 3 months ago for 24k a year (after tax around 1600 a month, I've gotten multiple offers but they were all 24k). My previous job experience was some substitute teaching for a high school and some very limited work at a paintball field.
However I have no idea how to move out of my parents house while maintaining some emergency margin every month as rent is expensive where I live and my work is in a pretty remote place. (1 hour commute from the major close cities and high which are Brescia and Bergamo. )
Adding that the cost of renting a small place in these cities isn't exactly cheap from what I've seen online and factoring in fuel costs (around 80kms a day, no public transport available) I feel like I'm gonna be pretty stretched with my salary.
I'll try to gain at least 1 yoe before trying to hop to something better paid but I just don't see this country getting any better from both a salary and cost of living point of view.
Some info about what I do at work and context of what I do at work:
- company sells custom PCBs and firmware so a lot of variety and a lot of weird stuff.
- previous dude before me was thought by his dad how to program and they made most of the firmware for their clients.
Sadly I have no idea what his dad liked to smoke because I would've loved some of it: all the software up till 2008 is written in assembly, from 2008 onwards it's c, both me and my coworker won't touch the assembly stuff with a 10ft pole. All his c stuff is basically written like this: 1 file with all the global variables, a big ass main function, and some uncommented helper functions from other projects when necessary. Absolutely no documentation.
- clients often require us to modify old firmware or fix bugs because they sent untested features out, I had to catch one and it was basically an overflow on a 16 bit cpu because of some math they did.
- they used outdated microchip mcus many of which don't have library support and is raw register manipulation (they didn't abstract anything because the previous dude didn't like c I guess) , many of their projects include either CAN or radio communication, while I've gotten pretty much autonomous on CAN, I still need some help from my older coworker with radio stuff.
- They put me on a new project which was basically a cabled modbus Rtu slave remote with some buttons and an lcd, I handled everything from the software architecture to the implementation, documentation and testing of each feature. Thankfully they let me use an stm32 MCU so development was much simpler on that one. I managed to hit a response time of 10 MS on a very short cable length, so optimal conditions. I've also had to adapt some libraries to the MCU I was using or change them to add functionality I needed. Client is very happy with it so far.
So getting to the final question: where do I go? Is staying in (northern) Italy my best best and try to job hop until I get something with decent pay or is it better to just get out of the country, and where should I move to?
I know my experience is quite limited for my age but it is what it is and I'm trying to catch up I guess.
TLDR: junior firmware dude doesn't know where to go or if reality is just hitting him. Feels kinda lost needs some guidance from people in that field because relatives are basically useless in giving advice.
(Formatted on phone sry for wall of text I guess)