If you haven't already seen them, RII has some pretty cool core values. As we continue our rapid growth, we've recognized the need to help new hires of all skill levels hit the ground running technically and identify personally with these values and our mission of "creating RIIdiculously Awesome solutions that make the world safer." While RII has fostered formal MentoRIIng classes since 2017, our Cyber Solutions line of business is excited to launch a new mentoring program tailored specifically to our specialized work. Multiple new hires are currently helping us shape and refine the program, and I believe that it will aid them in their onboarding journey. Embracing this MentoRIIng Mentality aligns with all of our core values:
Do things worth doing
Mentoring is something worth doing - from the perspective of both the company and the employee.
Grok customer success, co-create the solution
Talent comes from many industries. New hires may need help learning the unique vocabulary and understanding the top priorities of many of our government customers.
Get s#it done
While some companies might view mentoring as an expense and a distraction, we view it as a vital opportunity to help new employees develop the skills they need to ultimately work independently and get s#it done without continuous oversight.
while (true) { learn(); share(); innovate(): }
Every one of us started out knowing nothing. By sharing the knowledge we've gained over time, we help those coming in learn more rapidly and give them the opportunity to innovate future technologies and capabilities.
Let your geek flag fly
Both mentors and mentees receive dedicated time for the mentorship program, giving them time to collaborate and share experiences from their diverse backgrounds.
Stay human
We mentor because we care about each other. We all come from different life experiences - some with formal educational pedigrees, and others self-instructed through passionate independent research. A common mentorship experience - for junior and senior engineers alike - provides a foundation for everyone to build on together.
With these motivations in mind, we present our MentoRIIng Mentality and its core components - common body of knowledge; common body of skills; on-the-job training; in-house tooling; cultural introduction and contributions; domain-specific knowledge and skills; and plan feedback.
Disclaimer: I write this as an engineer, leading a strongly technical team with emphases on systems engineering, operating system internals, low-level programming, and binary analysis. Implementation may be adapted based on individual team or role needs.
A common body of knowledge
Technology and software in general is so broad that it takes a lot of time to discover the vocabulary, tools, frameworks, and general concepts required to be effective. The common body of knowledge provides resources across a wide range of topics. Mentees are not expected to become an expert in each area, and some areas are more detailed than others. The primary goal is to expose them to the most commonly used vocabulary and concepts so that they are aware of such resources and can research them in more detail if it is relevant to their assigned research.
We emphasize libraries and frameworks already used by current programs and internal tools. This helps us limit the use of various competing technologies, and allows an engineer using a framework on one program to easily transition to a new program without having to learn a new API.
This portion of our mentoring plan is intended for mentees to progress through independently, at their own pace, without direct mentor supervision. Mentors will check in on their progress, and of course, mentees can discuss any questions related to these topics and request additional resources or guidance if needed.
A common body of skills
While the common body of knowledge provides an introduction to knowledge, vocabulary, and theory, the common body of skills ensures that engineers have tangible hands-on skills that apply the theories in practice. These are projects, challenges, and tasks that will require mentees to engineer their own solution.
While mentees may work through some of these challenges on their own, this section is where they are expected to spend the majority of the time with their mentor. There is significant value in working with a team member, allowing both of them to learn from each other. The mentor can provide feedback regarding workflow, strategies, coding style, solution design, and guidance about which strategies to pursue.
Mentors are not expected to know the answers and solutions to all of the challenges. There is significant value in trying to solve a challenge together, and mentors are encouraged to spend time demonstrating how they approach a challenge (instead of blindly providing hints and solutions). However, a collection of solutions is available for the mentors to utilize as needed.
On-the-job training
While the resources and challenges provided are helpful training environments, there is no substitute for on-the-job experience. This MentoRIIng Mentality is intended to be worked alongside the mentee's assigned program, supplementing the day-to-day tasks of the program. This continues until the mentoring plan is complete, and there is no required timeframe for completion. This is an important point - mentoring is not merely a few hours set aside for studying; it's part of how we do business, and we must provide enough time for mentees to absorb the material and apply it to their program's needs. A junior engineer or someone transitioning from a different career will need more time to cover this material than an experienced senior engineer will, and that's ok.
While mentors should be available any time they are needed, the reality is that they have program responsibilities as well. Mentors have an expectation to spend a number of hours each week with each individual they are mentoring. Mentors and mentees are free to coordinate and find consistent time to spend together, especially to work on the common body of skills hands-on challenges.
In-house tooling
Individual programs are often isolated, but we believe strongly in having a set of tools that work, work well, and are well-known and used throughout the team. Although individual programs may have tools that can’t be shared, we want to share as much as possible to prevent duplicated work and build trust in the tools we’ve developed. These tools should also have meaningful and accurate documentation. While we understand that technology and business needs will change, our tools should be enhanced, maintained, and used as much as possible.
We want mentees to have the opportunity to use our tools, understand their strengths and weaknesses, and provide feedback. We emphasize making tools extensible, allowing the core to be developed and used universally, allowing programs to create plugins and extensions that can be secured and maintained separately. Mentors can introduce the tools and demonstrate their usage, although we encourage mentees to review and provide feedback on the current documentation as well.
Cultural introduction and contributions
As many of us moved to work-from-home during the pandemic, we know it can be difficult to maintain a connection to the team and the company. This is profoundly amplified as new team members join us without being able to meet us in person. To help new hires transition into the company, this section of the mentoring plan introduces them to some of the resources we have and the mentalities we espouse. This includes resources such as core values, internal documentation, peer feedback, past performance, and team-specific information.
Significantly more important, however, are the ideas that new hires bring to the team. We want mentees to feel comfortable expressing ideas, goals, and struggles. We are not perfect as a company, a team, or as individuals, but we believe in professionally and respectfully expressing and listening to feedback. The mentoring plan provides opportunities for mentees to contribute to our culture. Additionally, mentors should actively ask about ideas mentees have for the team, and mentees are encouraged to approach any team member with any concerns, ideas, or struggles.
Domain-specific knowledge and skills
While the common bodies of knowledge and skill are required of every new hire, the material in the domain-specific knowledge section is not required. Rather, this section provides resources and challenges based on advanced and domain-specific topics. If mentees are interested in a specific domain, it is encouraged to briefly spend time learning more about it here. Alternatively, if mentees have not been exposed to many real-world tasks, it may be beneficial to briefly look through all the listed domains to get an idea of the similarities and differences amongst them.
The exception to this is for experienced new hires who moved quickly through the mentorship plan and for whom the previous topics were primarily a refresher. In order to give them the opportunity to have dedicated time to increase their knowledge, they are encouraged to study these topics, and/or add additional resources to expand the training material here. These same materials can also be leveraged for professional development - helping engineers seeking a change of pace transition into new domains.
Plan feedback
While we think this plan is a great idea, we understand that executing it may expose some shortcomings. And that's ok! Each mentee will complete a feedback questionnaire to let us know what felt valuable, what should be added, what should be removed, and if any resources are no longer relevant. Technology changes quickly, and we want each mentee to contribute their own thoughts to the program and help us make it even more RIIdiculously Awesome.
Conclusion
We look forward to each new hire we add to our team, and are now even more excited to grow with them through our MentoRIIng Mentality. If this sounds like a good idea to you, apply at our Careers page and let us know that you saw this blog post!
Comments