TL;DR: I am having issues maintaining the balance between mentoring junior devs, meeting deadlines as a group, and completing my own work. Read on for more info.
For background, I work at a small, 100% self-sustaining, community based contracting department that is part of a larger company.
We target most of our work to rural communities and do our best to give them fair labor rates. Our work consists of building small apps and utilities to boost the efficiency of community organizations and rural government departments.
Part of our community focused mission is to help young students and interested people gain experience for bigger and better jobs, often in software, graphic design, etc. This often means we will work with local educational institutions to place students in an internship here. These students help make our work possible in a lot of ways and are a great public relations opportunity for our department.
Over the years, our department's scale has doubled and we are doing more work for the community. As part of this process, I (a recent CS graduate) have been brought on to help manage the interns as well as handle some of the increased work load.
This leads me to the problem: part of my job is to mentor these interns, but what do I do when this gets in the way of the deadline? Oftentimes I can solve the problem much quicker on my own, but in order to teach the interns, I need to delegate it to them and allow them to discover the solution.
To complicate things, the time spent helping interns cuts into my own schedule of work. This has begun to weigh more heavily on me as of late because of the amount of work we have picked up.
In short, what do I do with this? Solve the problems myself and let the mentees flounder? (I am wary of teaching learned helplessness.) Or should I try (with little success so far, I might add) to build even more cushion time into all of my project deadlines?
My goal is to complete work on time while still being able to mentor my interns.