Is it common to provide management/supervisor roles to junior developers, patently it is not, but it is also not uncommon. Please allow me to elaborate.
Being in a similar position I wanted to provide some further insight and hopefully supportive comments that help grow you into your new position and role within your company.
First let me start by saying, the only thing you are lacking is experience and confidence. Both of which are learned on the job and through seeing yourself grow.
One of my favorite quotes is To teach is to learn twice (or similar). You have been given an opportunity that few will be provided with and you should seize it immediately and use it to your advantage.
Let's first look at your confidence (highlighting is mine)
I work at a start-up and my position in front-end development is not a
position anyone else here has; I've had no seniors here to learn from
and so all of my projects have been built and designed on my own and
through my own learning (and we all know what a rocky road that can
lead to)
As a junior front end developer you are already performing tasks at a senior level. This is not as uncommon as you may think and depending on your compensation (another topic altogether) may be why you're junior. In the business we look for "rockstars" at a junior level that we can groom to fit the business' needs. Take pride in the fact that you are owning a complex beast. Even if the complexity feels simple to you it just remember that greatness comes in baby steps; every now and then it is in leaps and bounds, but for the most part it is iterative.
Now lets talk about your experience in management. A great manager is akin to a great parent: You support your team, you enable your team, and last but not least you learn from your team. Can you do those things? In terms of how I do it:
Support Stand between the business, your direct manager, and the rest of the company and your engineers. Nothing gets through without running by you, You'll want to ensure that your engineers have a clear vision of the road ahead.
- I try to prevent out-of-band tasks from hitting the dev team. It's good to keep them focus and set realistic expectations. I have even gone as far as to belay an order that came from my manager above until I had time to discuss it with him. It's scary to do, but it's your job to keep the vision focused and work closely with your direct-manager to ensure they understand what your team is focusing on. this has the added bonus of allowing your manager to re-rail any efforts that don't completely align with the business and set your expectations for your team
Enable What roadblocks exist between success and your interns? Do they need training? Do they need assistance? Do they need direction and tasks dolled out? Enabling your team is as simple as providing them a means to continue doing what they do best.
- e.g. Be it dealing with the interoffice politics, ensuring they have a good solid dev environment, or understand what the next six months of development look like.
- I work hard to ensure my team feels enabled to do their job and to keep their wait times minimized (idle hands are the devils playground).
Learning learning from your team, especially when in a supervisory role and still acting as a developer, is as simple as it sounds. You're not the sole proprietor of knowledge on your team. You will have some developers that are heads down machine gun developers. They will see a task and kill it. These are your worker bees, they will be just as important to you as the developers who want to work on the latest and greatest technology and are chomping at the bits for it. These are your visionaries they tend be happiest running R&D and learning what's latest and greatest. They are also just as indispensable. You will need all colors of the rainbow to garner a successful development team. They will support you, they will enable you, and in return they will teach you.
- We run daily standups, each person gets a MAX of five minutes to discuss what they did, what they plan to do, and any roadblocks. We also schedule regular time to meet and code review and pair program when needed or requested.
Your relationship with your developers as a manager/supervisor is symbiotic. For all you give to them you will receive in return. Your skills will continue to grow, and you open yourself to having productive learning sessions both in terms of how to interact with people, but as well as your code.
Just remember, you are the parent, you are the thermostat and not the thermometer. You ultimately make the final call. Let your judgement side with what has the best interests of the business; however, still be flexible enough to allow these interns to feel autonomy and that their work matters studies have shown that moral is best when people feel autonomous and that their work does provide value to the business.
Cheers and congratulations on your growing role.