見出し画像

Two months in, a retrospective on my first Software Engineering post

※ This article is written by James, who entered MODE TYO office in March, 2022. Japanese translation is the following.

Having spent 12 years as a teacher of Computer Science, and feeling a lack of direction, growth, autonomy, and the passion I once felt in that role, I decided it was time for a change. Almost a year later, my first child was born and I completed a developer bootcamp  then I accepted a role at an IoT start-up based in the US and Japan – MODE. Would I find what I was looking for in a very different industry?

Why MODE?

I hit the job hunt right before the Christmas / New Year period and so after about 2 weeks of applications everything started to wind down. By February I ended up with a couple of other offers, but a few things stood out about MODE’s job posting and their offer:

  • The job description was the first I saw (out of hundreds) specifically aimed at entry level, but with a reasonable salary range (given my previous income and a young family)

  • The process was quick. It felt like it was important to them to hire me. The whole process from first contact with their recruiter to offer was less than a week

  • Everyone I interviewed with came across as honest, friendly, and enjoying their work

  • MODE is doing work that stands out as different from a lot of other postings. As an IoT company they operate from the lowest layer of hardware, right through cloud services to frontend application development. The range of opportunities to learn was unparalleled.

With all this in play they made a very competitive offer and I accepted without hesitation.

What is working at MODE like?

MODE is fairly small right now but growing (see our hiring info at the bottom). There are 20 full time employees, and just 10 engineers (excluding CTO and CEO) so most people know each other quite well. Most of these engineers have at least a decade of experience so they are great to learn from. It’s extremely collegial – everyone is friendly, helpful, and willing to give up their time to support a novice. A worry when joining any new company is “will people be nice?”. I can confirm, there are no a******s!

Being a startup means we are busy, this is good news, but a downside for an entry level dev is it can feel like you are contributing very little. Other engineers are busy and working hard to achieve our goals and satisfy customers. As a result, it can feel like a real imposition to ask directly for support or to take someone’s time to explain a system. We have documentation, but it is sometimes out of date and of course it’s written from the perspective of someone who knows the system inside and out. This doesn’t always relate well to someone starting from zero. This is a great opportunity though. I’ve spent quite a bit of time amending documentation and adding what I could to improve this for the next person. I have the time and our other developers don’t. This is another great way to learn and contribute.

As an entry level engineer, I typically have only one thing to work on at a time, and so I will often get blocked waiting for help or a review on a PR. Again, this can be frustrating as I want to get on with things and help the team out. But ultimately has been a good thing. Waiting time means more time to think and reflect on the process, to write up what I’ve done, or problems experienced, and to learn new technologies and languages, such as Go, which our backend services are written in.

What have I learnt and achieved so far?

In the past two months I’ve:

  • Made my first PR within a week and have received a lot of great feedback since then on each one

  • At least started to understand and interact with a complex stack that goes from the custom gateways we provide our customers, through to our backend cloud platforms and deploying instances, to the frontend web applications, some of which have their own backends

  • Fixed bugs and implemented minor feature requests in frontend applications

  • Updated documentation wherever I could

  • My feedback on the new hire induction process has directly led to a more structured approach

  • Contribution to company direction and policy discussions

  • Involved in product design and direction, and taking on significant responsibility in redeveloping one of our projects

  • Started to learn Go and made simple PR on one of our main platform backend services

  • Finally, I’ve gotten to know most of my colleagues fairly well, whether through our regular teatime (virtual) breaks, weekly meetings, or monthly TGAIF (Thank God it’s almost Friday – try organising a team over 16-hour time difference…).

In conclusion, have I found what I was looking for at MODE?

  • Direction – tons of it. The CEO knows where the company needs to go, and everyone is pulling in that direction.

  • Growth – in spades. I’ve learnt a great deal already, but there is a lot more learning to come. MODE has so much valuable experience at every level from the CEO and CTO, to sales, to our Enterprise Support Managers, and of course the engineers.

  • Autonomy – absolutely. I am assigned tasks, but I’m asked my opinion on them. My solution is respected. I can determine my path in the company and have been supported to do so, both with time and money.

  • Passion – definitely. I love “going” to work in the morning and working on the problems we have and thinking about the future of our platform.

If you are looking for your next role MODE is hiring for a range of positions from engineers (senior), to sales, to product management. Check out all the details.