I am simply not satisfied with what I have learned up to this point or what I have built - I continue to push myself to grow as an individual. For most of 2018, I led a high profile project that involved over a dozen engineers, and I have started 2019 by paving the way for others to follow in my footsteps with a program that could change how we learn from one another in the different groups and styles of engineering we are accustomed to.
These are experiences I could not have had or continue to have if I did not continue to do what I enjoy.
I work very, very hard to try and keep the projects I lead running as smoothly as possible: in the face of constant change and unexpected roadblocks, I strive to find ways to persevere and deliver the product, all while keeping the team highly functional and motivated to enjoy the experience (even if the project's fate seems dire). It is often an aspect of one's job that can get very little praise and can be highly criticized.
Looking towards the future, I hope the community can make the idea of technical residency programs - where an individual can reside on different technical teams around the company for periods of time across a rotation - an extremely commonplace opportunity no matter what company you work for. I feel that it's beneficial for both the individual resident and the technical team to have that different perspective on how we approach solving problems (like asking someone to look over your code with a fresh set of eyes to see what you're missing), as well as introduce a challenge that could really enable the individual resident to grow.
For my experience of it, I am constantly pushing myself outside of my comfort zone: I'm forcing myself to learn more aspects of how our systems run and our infrastructure is built, I am pairing with individuals I have never worked with before, and trying to bring my perspective as an application developer to teams who don't build applications.
What I have found so far is that, to make a type of program like this successful, each technical team needs to be a safe space to learn and make mistakes. Residents may or may not fit well with a technical team for any number of reasons, but lack of opportunities to learn or collaborate effectively with others can lead to an overall ineffective experience.
I hope that, by the time I complete my rotation, I will have gained even more insight as to what might make this successful and sustainable for the company.