So you're a growing junior developer, the University's summer break is coming up and you're looking for a new development job for some necessary upskilling. Maybe you have had an internship already and you’re looking for someplace new.
I've been in a similar position to you. Having worked in two very different companies (Ackama, and a smaller startup with about five developers), I've discovered quite a few aspects that I would now look for in a new job. I hadn't even considered these aspects until a few weeks into working here, so hopefully you will find these helpful on your journey. (Note that I don’t include all possible things to consider here, so treat the things below as extras to your own thinking.)
Small companies, such as startups, may struggle to provide sufficient support to you. As a junior, you will need to ask a lot of technical questions to more experienced developers. Quite often, Q&As aren't sufficient to help you get the understanding you need to complete a task, and you'll need to pair programme with another developer for anywhere between five minutes and a few hours. Otherwise, you can end up searching Google for hours (or twiddling your thumbs) until you can get help. At my old job, I would encounter this problem - the senior developer I needed to get help from was frequently unavailable, whether he was at a meeting, or occupied helping another junior. For medium-sized and large companies, this may not be as much of an issue as there will hopefully be more experienced developers around. It is definitely worth asking your interviewer what sort of support systems are in place to ensure that there will be (at least most of the time) someone you can get help from.
Learning by example
I'm sure you have encountered code that has been difficult to work with before (for a variety of reasons). In my experience, there are often times where a startup will need to prioritise short-term over long-term productivity (by not following certain practices). Having worked at a startup before, I have encountered lots of code that is very difficult to understand and edit without breaking some feature. Especially given that you may not have worked with large code bases before, it can be stressful, and you may not get to learn their code style - or techniques such as unit/integration testing - to the same extent. Just note that larger companies may have legacy code written in a time where code practices or standards were different than they are now. How the company balances maintaining code practices with delivering features in the short term is something good to ask to experienced developers there.
A bit about me
Through the first three years of my Software Engineering degree, I worked part-time at a startup doing mobile app development. After deciding that it was time to move on, I put my CV on the Summer of Tech website. (Summer of Tech is an internship programme that has an especially big presence at Victoria University.) The Head of Development at Ackama, Eoin Kelly, reached out to me for an interview, and the hiring process went well from there. I ended up being hired for the three-month summer break from university, ending recently.
During my internship, I worked with two different Ruby on Rails projects, being part of two agile development teams. The first involved writing a secure data submission system for Vanuatu's Financial Intelligence Unit. The second involved developing a website for Business Link Pacific, to help Pacific businesses find the services they need in order to grow.
As mentioned previously, Ackama has "Investment Time" to give employees time to develop various skills. I worked on a few personal Elixir projects, out of interest for this increasingly popular language.
I would like to thank everyone involved in making Ackama the company it is today, particularly to Eoin for placing this faith in me, and Dan for providing me with lots of advice over the months. I've particularly liked the social and friendly atmosphere at Ackama, and positive attitude the company has towards learning, both as a company and as individuals. It has been a joy meeting and working with people at Ackama, and I am 100% keen to come back.