Struggles of a new dev

Struggles of a new dev

Week 1 on the job

Two weeks leading to the first day on the new job were going along great. I was using my vacation days on the old job, and had a lot of time (or it seemed like that anyways) to do things I normally didn't have time for. If you read my previous blog in which I wrote about my roadmap to getting hired as a frontend developer at 40, with a family and a job, you could gather that the resource I lacked the most was time. Time to do nothing. Or to play an instrument. I've been an avid amateur gamer my whole life, and haven't started any game on PC or PS4 in 3 months now. I thought these 2 weeks would give me plenty of time, but...

Instead I was still high from getting a job, and I learned, and I worked on my projects, and on that long blog. I wrote to my new mentor if he had any techs, libraries, anything he wanted me to check out. He sent me a list of things, saying "don't worry if you don't go through all of this, this is a long list, and there's plenty of time", and I went through it all. It wasn't in depth, but I got acquainted with all the tech and concepts. There were some react concepts I've already learned (more or less), Sass, BEM (naming methodology, pretty important in teams), Redux and redux-saga. Last two conceptually are not difficult, but there is a lot of things to learn here.

As the Day got close I was more and more anxious to get started, the good type of anxious. I've really gotten a great vibe from my interviewers, and it seemed like the working atmosphere was great. And I wasn't wrong. Any change at 40 I think is difficult, especially after 14 years in one company. I'm also somewhat introverted, so meeting new people, getting to know new people is stressful. But the people I'm working with have been more than welcoming. I've been extremely lucky to get a job in a smaller company, where everything is not that rigid as in big companies. Atomic Intelligence is a data company, and has only recently started to develop frontend in-house. There is plenty of work, but my mentor has time to help me out.

Day 1 and 2 were basically me installing everything needed for work, and reading a bit through the project, looking at the codebase. Due to many smaller issues colliding I couldn't really do any real work for 2 and half days. The time to spin up is most likely going to take you a pretty while. You need to install everything, all the tools, get acquainted with all the tools your company is working with (like trello, notion, jira, slack, whatever). You also need to pull the project you'll be working on, start reading it, start getting to know it.

Since I started working on wednesday, it was now friday noon, and the not so good type of anxiety kicked in. Codebase was huge (from my perspective), and it all is much harder because I had to read someone else's code, which I haven't really done at that scale. In my mind, I had to do something before the weekend. I had to finish a task assigned to me, or just even a part of it. Of course that was all in my head. I think my boss saw that I was anxious, and reassured me that there's plenty of time for me to do anything useful, and that I wasn't in any kind of pressure. That helped me relax a bit, even though I still wanted to do something before the weekend started. With the help of my mentor, I was able to finish something before the working day ended, and I was really relieved.

I've spent some time during the weekend learning typescript. It's amazing how while reading through what and how, many many errors I've had in my own projects seem really avoidable using typescript. I really wish I started using it quite some time ago. Since it's opt-in you can always use it as little or as much as you want to, and you can ease into it. I really do recommend learning about it, and using the basic concepts to all the new JS people out there.

Next couple of days went on by really fast. I had some tasks I needed to do, and was doing them alone, or with help of my mentor. I just take the task, try to divide it in smaller parts, do what I can, ask about what I can't. Sometimes I feel dumb, because I didn't think of a pretty simple solution, and a lot of my work is trial and error until I succeed, but I really do feel great when I'm able to do something by myself. When not, there's my mentor who really has patience for me. It's great to have someone close by when you get stuck. Much easier than going to stack overflow and waiting for a response. Having a mentor will make your progress much faster and easier. He tought me how to think about certain situations, how to find what is where in the codebase, how to search for issues, now I know there are so many more ways and tools than console.log. Network tab with requests and responses can be your really good friend, to see what's going on, and at what time. In css the order of things really has a great impact. If something is declared later it will overrule things with the same specificity. All those things you don't maybe take into account while you're making a project on your own, when you don't have many different people and many different libraries trying to do some things, maybe even the same things in different ways.

All in all, first week was challenging but fun, with a lot of small wins.