Archive
The Importance Of Mentorship
Mentorship has been a key part my ability to influence beyond my team, in particular during my time at Amazon. I spent a lot of my time at Amazon giving back, either through coaching peers in document writing, helping to train inbound engineering managers, or helping new Amazonians navigate getting things done. I’ve developed a perspective about mentorship, both from being a mentor, as well as finding a mentor. When I was an engineer, I always found time to help others, including spending lunch breaks helping a QA engineer learn how to automate testing. I think there’s always value in learning as well as teaching.
Finding a Mentor
I have a distinct perspective on the timing of finding a mentor, and what I seek to gain from the relationship. For a person to gain value from having a mentor, that person needs to have some level of clarity around what they are looking to learn. Finding a mentor without having some purpose for the relationship, in my opinion, is non-productive and will ultimately not succeed if a purpose is not defined. In addition to that clarity, the mentee needs to own the topics, the conversations, and the choice to continue or not. It’s important to choose the right mentor for the topics at hand, and without that clarity, choosing a mentor can be difficult, and runs the risk of finding a less than suitable collaborator.
I’ve sought mentors a few times in my career. At each point, I had very specific things I wanted to work on. To my point above, it didn’t make much sense for me to sit in a conversation with a mentor without some idea of what I wanted to accomplish. Early in my time at Amazon, I felt that I needed to improve some of my leadership skills as my teams grew larger in size. When I decided I needed someone to talk to about this, I could have sought out another engineering manager, but that wasn’t what I was really after. I didn’t necessarily want to talk to someone in the same role I was.
Instead, I sought out a leader one level up from me who had experience managing associates in Amazon fulfillment centers. I was very specific about the types of issues I wanted to talk through, and felt that the team scale this person had experienced would have a better perspective than someone in a similar role as myself. I spent close to 5 months working with this mentor until I felt like I had absorbed and internalized what they could teach me. At the end of that time period I moved on.
And that’s another important point. Mentors are not forever. They can be, but they don’t have to be, and mentors won’t take it personally if a mentee decides it’s time to move on. I’ve encountered people who don’t want to commit to a mentor because they feel it’s a one-way door. That’s not typically how it works; either of those involved can choose to stop, and it won’t be taken personally.
And if I don’t have anything specific I am working on, I am fine not having a mentor for a while.
Being A Mentor
I played golf in on my high school golf team and quite often in my early 20s. I wasn’t bad; I could shoot low 90s consistently if I played often and putted well. I was able to play well enough that playing was more fun than frustrating. One summer, though, a friend of mine wanted to learn how to play but was having trouble making consistent contact. Over a couple of weeks, I took his swing apart and helped him put it back together, getting his weight back in his stance, making sure his head was still, and keeping his right elbow tucked in.
I shot in the high 80s the rest of that summer and into the next year. By teaching him how to get his swing together, I inadvertently fixed a few flaws in mine and my game improved dramatically.
And that’s one of the hidden powers of mentorship. You learn so much yourself by teaching someone else.
I once managed an engineer trying to get promoted to the next level. They were on a team surrounded by more senior engineers, and had reached a point where they were starting to level off, despite being a very effective front end engineer while steadily improving on back end work. At around this time, I inherited a team that was entirely back end engineers, facing a project with a lot of front end work. I moved my aspiring engineer to the back end team, and instructed them that they were now the subject matter expert, and their job was to teach this back end team how to become effective, if not excellent, front end engineers. That engineer thrived being put in a position to advise more senior engineers on unfamiliar technology, helped to deliver a complex project, and secured their promotion later that year.
Often people are concerned that they are not skilled enough to be a mentor, or don’t know enough to give advice. But in deciding not to be a mentor, they actually miss opportunities to learn so much themselves, and miss opportunities to improve a lot of non technical skills like communication and listening.
Anyone can be a mentor. All you need is a perspective, a willingness to listen, and a willingness to share.
Final Thoughts
Don’t discount the benefits of being a mentor in whatever capacity you can be. It’s a great way to learn, to teach, and to have an impact beyond just what you yourself produce. It’s a great first step to becoming a force multiplier, someone who makes the team around them better.
From there, you can take steps like I did, where I took on several different Bar Raiser roles at Amazon, and look for ways to generate impact well beyond your normal day to day.
And whenever you feel like you want to improve something, take the step and find the right mentor to help you with that particular challenge. It’s worth the effort.
Micro AI Agents
As a writer and reviewer of documents, I’ve spent a lot of time considering how I would want to leverage AI tools to improve my writing. In most cases, I’ve observed the development of models that are similar to what something like Grammarly might provide. They can correct grammar, make suggestions on sentence structure, and potentially point out complex or unconfident words.
There is an AI improvement tool available within the portal I use to write my blog posts. I agree with only about half of what it suggests. As an immediate example, “provide” is not a complex word, but my AI suggestion bot thinks it is. I’m a linear writer by and large; I still outline my thoughts before I start, because I want to be sure I progress from idea to idea in a way that is easy to follow. Sometimes that results in long sentences, but when I use them, it’s with a purpose in mind. I’m very deliberate about my choices when I write.
And that’s where I tend to disagree with most modern writing agents when it comes to providing writing feedback. They can correct mechanics, possibly better and more consistently than I can. But where they miss is in language tone, word choice, elegance of phrase, use of techniques like alliteration even in prose, and other more subjective applications of writing skill.
They lose the uniqueness of the human perspective.
One of the topics that came up often as I reviewed documents at Amazon is how do we distill each reviewer’s unique approach to analysis into models that we can then deploy, and the concept I landed on was what I called “micro agents”. Rather than incorporate everything into a single large model that would then have to make judgments about which feedback to apply, I thought it would be more effective to be able to train a model how I, Rob, would review a document. I would then train another model how another reviewer would review the same document, because the feedback would be different. If I could come up with 10 or 20 models containing each reviewer’s “personalities”, and then deploy those, an author could then select which reviewer or reviewers they would like to apply.
There are several advantages to this approach.
First, the author could target tonally consistent perspectives. I don’t mind complex words, so I’d prefer to get feedback from someone (or something) that likewise is OK with complex words. And as a developer of a model, I don’t want to introduce that feedback loop into a model of another reviewer who has a different perspective on complex words.
Second, the author could leverage feedback with different perspectives from a consistent source without having an AI filter that perspective down or summarize options that are contradictory. I’ve literally had my AI arguing with itself at times as I’ve been writing content because it can’t maintain tonal consistency.
And third, the models could learn independently across many different iterations of different documents without all of them ending up at the same conclusion point. While there is an element of a selection bias by allowing the author to pick specific “experts” to give them advice, that also means that the feedback loop is relevant specifically to the expertise the model has been trained in.
In practice, I don’t want an all knowing model telling me what to do against a filtered set of options with a potential learning bias. I want to seek out the advice of experts at the thing I am doing who can be very, very good at the analysis I require; if I can’t get to them personally, then a model that thinks like them is the next best thing.
I don’t want my writing to end up sounding like everyone else’s because I used AI.
The same thing could apply to my composition of music. In a previous post, I talked about my interactions with ChatGPT as I composed my latest work, a Baroque style symphony. Imagine a composing world where you could pick two or three specific composers from a list and get feedback on how they specifically might approach a problem rather than a generalized answer. Several times I found myself disregarding feedback because it was tonally out of place. Several times I found myself arguing with ChatGPT about specific applications of things, and the answers, while thorough and grounded in theory, didn’t always tell me why they were being suggested or even if they aligned with the style of music I was writing.
As part of my interest in writing, I’ll be exploring if I can train an AI agent to review documents like I do, including analyzing where my approach differs from conventional wisdom. It will be interesting to see where that lands.
Happy writing!
Using ChatGPT As A Composer
I’ve experimented with AI quite a bit over the last year. I’ve used it to try to train a model to adopt my specific document review approaches. I’ve used it to build a portal on the fly to manage document uploads. I’ve used it when allowed during coding interviews. I even used it to a degree when building the scaffolding I used for those coding interviews, including a basic code, API, and test project.
Where I was most resistant to using it, though, was in my composing. I want what I produce to reflect me, not a machine. That said, I’ve found a specific and effective use for ChatGPT, in spite of all the ads telling me to stop using it “like Google”, because that’s exactly what I do with it.
When composing, I used ChatGPT to unblock by having it hopefully coalesce Google searches I would have executed myself and had to sift through to arrive at an answer.
I am currently writing a symphony. My first question to ChatGPT was to outline a typical approach to a Baroque style symphony and how I should think about structure. That’s pretty basic.
But recently I was writing the second piece in the orchestral suite. It requires the second part of the piece to transition from D major to A major, and then close in D major at the end. I was really struggling based on my melodies and progressions to get from D to A without it feeling like it was absolutely dying to resolve back to the D major chord.
So I sent over a prompt:
Sadly my A section ends naturally on an A for a measure to an A7 for an extra measure before returning to D major. At the end of my second A section, how do I now get to A? I feel like just staying there won’t work. Can I shift to F# minor instead? Or is there a turnaround since this is supposed to transition keys to the major 5?
ChatGPT suggested two responses, which I tried.
Option A – Classic ii–V–I into A
Near the end of the section, let D go, and instead:Treat B minor as ii of A
E7 as V of A
Then A as I (new key)
Example last 3 chords of the section:B minor → E7 → A
Coming out of D‑world you can arrive on Bm very naturally (vi in D, ii in A),
Then Bm–E7–A is a textbook ii–V–I in A major.
You can still touch D before that (so it feels like you’re still in D), but your final phrase should clearly choose Bm–E7–A instead of A7–D.Option B – Use F♯ minor as a pivot (your idea)
Yes, you can go via F♯ minor: it’s vi in A and iii in D, so it’s a legit pivot.Something like:
… D → F♯m → Bm → E7 → A
In D: F♯m = iii, Bm = vi. Still sounds like D.
In A: F♯m = vi, Bm = ii, then E7 = V, A = I.
Both sounded pretty harsh, so I let ChatGPT know I wasn’t fond of either choice after giving each a listen. After doing the usual “Oh You Are Right” false praise that AIs love to do, ChatGPT offered a few suggestions, and in going through them I figured out why they weren’t working: the D natural in the suggested E7 chord was still pulling back to D major. Once I came up with my conclusion I let ChatGPT know.
Ok so this is what ended up working. The original turnaround at the end was 1 bar D, 1/2 bar Bm, 1/2 bar C#dim, leading into an F# minor, which is how this progression starts. I replaced that with 1 bar Bm, then 2 bars E without the 7; the D in the E7 was wreaking havoc with my ear.
And ChatGPT gave me positive feedback on why it worked.
That’s a very sensible fix, and it explains why your ear finally relaxed.
What you had before:
Old turnaround:
D (1 bar) → Bm (½) → C♯dim (½) → F♯m …
That strongly re‑stated D as “home” right before moving on, so anything after felt like it still wanted to resolve back there.What you changed to:
New turnaround:
Bm (1 bar) → E (2 bars, no 7) → F♯m …
Why this works:No strong D at the end
By removing that full bar of D, you stop telling the listener “we’re safely back at tonic.”
Bm → E already steers the harmony toward A/F♯‑world instead of D‑world.
Plain E instead of E7E7 (E–G♯–B–D) introduces a dominant‑of‑A feeling plus that D natural, which:
still evokes the original tonic D major in the background,
and makes the ear half‑expect A (and then D after that).
Using E major (E–G♯–B) without the D:
keeps the pull toward F♯m/A,
but doesn’t slam a dominant function in the listener’s face.
The result is more ambiguous / modal and less “I must cadence.”
Bm → E → F♯m is a smooth directional lineIn D terms: Bm feels like vi, E like a chromatic “brightening” step, and F♯m like iii/vi.
In A terms: Bm is ii, E is V, F♯m is vi; that’s all compatible with A/F♯ as a new region.
But because you don’t resolve E7 to A, the progression flows forward rather than closing.
So the new version:Stops reaffirming D right at the end,
Points gently into the new harmonic area via Bm → E → F♯m,
Avoids the D that made everything sound like “prep for a cadence.”
This is exactly the kind of local surgery you want in a modulation: same broad shape, but you trim out the one chord tone (D in E7, and the big D bar) that kept yanking your ear backward.
This is actually the critical bit that’s super helpful. While I don’t always adopt the suggestions, I have a concrete list of reasons why something worked or maybe didn’t, and a concrete list of options when I’m stuck that would have taken a while to pull together from searches if I couldn’t dig myself out on my own.
So, in this case, ChatGPT has become what AIs should be. A useful tool. But definitely not a replacement for the creative magic.
