10 ms·
Developers mentoring other developers: practices I've seen work well
- jdbernard 7y agoI'll come back and edit this after I've finished the article but I have to admit I'm skeptical about taking advice on mentoring from Uber. Edit: My skepticism was misplaced. A lot of this advice is very good and, as the site implies, practical.
- deleted 7y ago[deleted]
- mc3 7y agoThis is not "Uber" but an employee of Uber who has worked other places too.
- jdbernard 7y agoThat's true. However, it does seem like the foundation for their mentoring-related experience is Uber: I joined Uber. Until then, I've never received or done mentoring, or at least never put this label on any activity I've done before. I've never worked at Uber and I don't know many people who have. So most of my knowledge of how Uber operates and of the culture they espouse comes from places like HN. Overwhelmingly the press' depiction of Uber's culture is extremely negative. Mentoring is one of those potentially formative experiences in a person's career. Presumably the "Uber way" of mentoring forms a large part of the author's experience and approach to mentoring. It was an interesting divergence from what I would have expected. It's a good data-point on the other side of all the negative we hear related to Uber.
- opportune 7y agoMy issue with mentoring is that in practice it’s often just a way to help the mentor transition into managing or becoming a TL. Which isn’t necessarily good for the mentee because the incentives aren’t really there for you. Your org might force you to grab a mentor who does something unrelated, and not particularly well, just because of their level and career aspirations. That said, technically capable mentors who actually care about mentoring can be great, I’m just not sure about top-down forced mentoring as a career requirement.
- faanghacker 7y ago> I’m just not sure about top-down forced mentoring as a career requirement. Tell that to all the people in this thread who thought I should accept my company's top-down mandate to do mentoring: https://news.ycombinator.com/item?id=21229910 https://news.ycombinator.com/item?id=21229910
- K0SM0S 7y ago> I’m just not sure about top-down forced mentoring as a career requirement. Indeed, it feels like saying "oh you two are gonna be friends!" I feel there's a confusion around terms. Life is a bit more complex. Mentoring is a rather specific thing, and 'real' mentors are a rare (and precious) relationship; it's long-term (at least in perspective, however long it actually lasts) and much more emotional in that there's admiration (reciprocal), there's care (genuine) for the other, it just can't be decided (even for oneself). It's not something you can commoditize with policies or incentives. You don't have 6 or 10 such people in your life, more like 1, rarely, 2 if you're really lucky. What most of the article seems to be talking about is very good but it's not really 'mentoring'. More like "skill sharing", good "onboarding" (even with seniors as we onboard others onto the systems we happen to know better in the organization or the field at large). It's informal teaching, transmission, it's an organization thing he's describing — not a human-driven relationship that exists around all else. The platform is more interesting. People with a desire to mentor may find a good match, and stick with it. Reciprocally. But the truth is that no more than online dating, you just can't be sure there's a match right now for you, you may find students / teachers (like find people to grab a drink sometimes), but mentees / mentors (long-term relationship) is a whole other ballpark. I'd say this: it is a good cultural evolution to value mentorship and try to form minds into engaging in such relationships, like you'd think it good people want to marry or raise kids. It also shows how learning isn't a school thing only, actually very little, but a life-long endeavor wherein all parties grow in the process. But just like Disney movies aren't reality for most people most of the time, a little temperance on the real felt experience of mentorship may be in order when encouraging people to the possibility.
- roberta_welch 7y agoImagine a mentor who belittles you, exaggerates your flaws, and brings up false accusations only in private, during one-on-one meetings, and only picks on you in secret. But outside they are very friendly. I have had two such mentors. I am extremely suspicious of any such one-on-one arrangements when there are no written records and opportunities for challenging unfair assessments formally. There has to be second opinions from disinterested parties. Now imagine an office politician who relays to you bad things other people said about you, and relays to others bad things you said about them, and encourages retaliation between staff. I have worked with one such person. Again here, under the guise of mentorship of one-on-one feedback there is a lot of gossip being generated. I can already predict that there will be more people who think they can mentor than people who think they can improve.
- lloydatkinson 7y agoSame here. I believe I’ve had two, possibly three “mentors” like this. Except instead of mentors they were managers and their managers. Two in particular were only a few months ago and it still confuses me if I think about it. They did every single thing you mentioned, mostly in private, no written record of any of it, moving goal posts, sometimes really scraping the barrel when looking for negative feedback. Sometimes it would be in public too - really petty stuff. Sometimes it was basically “Oh, you’ve forgotten that one particular API of the framework we know you haven’t had to use for over a year? Fuck you, you are incompetent.” I’m starting to think I was hired specifically to work on all the projects no one else wanted to do, while dangling the interesting projects like a carrot. I too am now extremely suspicious of any one on one arrangements - by nature they are specially designed to favour the organisation without fair representation for the employee their are victimising.
- scarejunba 7y agoI suspect that's because no one can really supply you with a mentor who's going to be good. There are only two reliable ways: you catch the eye of the person you want to be mentored by, you bug them till they mentor you.
- itronitron 7y agoI've experienced something similar as well, although I think the 'mentor' was sincere they were also incredibly neurotic and a bit paranoid from my point of view. The few people that bought into their advice remained under their wing/control for over ten years and probably experienced less career development as a result.
- zwieback 7y agoI've been fortunate to mentor a couple very sharp young engineers, while I can provide context and experience in long-term problem solving and project management I'm finding myself learning a ton from these guys who have more up to date coding skills.
- mattlondon 7y agoIn my personal experience, apart from onboarding, "forced" formal mentoring is bullshit and a total waste of time. No one benefits. I totally get the benefits of getting advice from more experienced folks, but you can do that ad-hoc so I just don't see the point for formal set ups and have chalked it up as something that someone somewhere in the organisation thinks is useful that everyone should do - kinda like all the bullshit "team work" or "what colour are you"/"look inside yourself" training courses that we are all required to take from time to time but no one actually wants to do and are a 100% totally pointless exercise.
- mk89 7y agoCould you share better your experience? And why do you think it's a pointless exercise?
- martijn_himself 7y agoIt's a catch 22 situation because a lot of organisations expect folk to skill up but don't provide a formal structure to do so. I've worked on projects where I was helping out junior developers but criticised because it wasn't a profitable use of my time. I agree with your point about "forced" mentoring though, some people just don't like to mentor so they shouldn't have to, but an organisation should encourage and reward it if it happens voluntary.
- Scarblac 7y agoI struggle with this. We get juniors that really don't know much about programming yet, some that start because they know our domain well and know a bit of Python. There is a lot they should learn that others get from formal education before they start to work. But we don't know how to give structure to it as a company.
- clintonb 7y agoIf your company cannot train junior engineers, perhaps you shouldn’t hire them. Doing does a disservice to all involved.
- random_kris 7y agoi am looking for a mentor. I have 3 years of expirience of programming profesionaly. Currently working as a backend java spring programmer. I am on this weird spot where I am not junior anymore but I feel like my skills lacking big time to advance to mid / senior
- tjungblut 7y agosounds like we need a "Ask HN: Who is available for mentoring?" kind of thread.
- McDev 7y agoWhile you're looking for a mentor, take a look at this guide and see if it helps. https://github.com/kamranahmedse/developer-roadmap#back-end-roadmap https://github.com/kamranahmedse/developer-roadmap#back-end-...
- aethr 7y agoA big mistake I made when I started mentoring other developers was making the answers to their questions too easy. I spent a lot of my early career crawling around on linux servers trying to fix weird bugs in pretty typical web stacks. Later on, when other developers needed help diagnosing an issue on a server I would say something like "sounds like X problem, look at the log file in Y". After several years of this, the same devs were still asking the same questions. I was helping them solve immediate problems quickly and easily, but I was not mentoring them. Developers don't grow by being given the answers. They grow by trying things and experimenting and solving problems themselves. These are the skills and the lessons that will serve them well as they level up their career. Not giving them the answers but giving them the tools to find the answers. These days, if there's no urgency, I would say something like "where are the places in the stack where a problem like that might occur, and what can we do to narrow down the set of likely issues?" I might give them some ideas, but let them do most of the legwork.
- thomasmarcelis 7y agoI can echo this experience. I guess this comes down to the Socratic method of teaching people: https://en.wikipedia.org/wiki/Socratic_method https://en.wikipedia.org/wiki/Socratic_method I have yet to see a more effective method of teaching developers, as this encourages understanding and learning about underlying concepts and problems
- crispyambulance 7y agoYes, the best teachers ask questions of their students, engage in a dialog and provide "guard rails" for the student to gain mastery of a topic. The end result of learning is not merely knowing answers but being able to ask strong questions (pithy, but true). This is also part of the reason why Stackoverflow is in such a negative light lately. SO is extremely good at providing answers to narrowly-focused well-defined questions, people forget or aren't aware that this IS NOT a good way to learn subject-matter. It leads to frustration from users because they're expecting someone to give them pointers on how to move forward on general problems and it's frustrating to point-mavens because they aren't empathetic enough to see what the problems are.
- crummy 7y agoThe site mentions https://codingcoach.io/ https://codingcoach.io/ several times. Has anyone tried this service? How useful is it?
- sparkywolf 7y agoI was also noticing that - it almost seemed like an intentional plug. If anyone has experience with it I would love to hear about it!
- dharmit 7y agoSame here. I came to the HN comments to see if there was any other comparable alternative in some comment(s)!
- Leherenn 7y agoHow do you choose what to focus on with structured mentoring? It feels like current issues are too short term for this, unless it is a fundamental issue like no having enough domain knowledge. Googling and/or a quick discussion with your colleagues should suffice in most cases. If it is a more general subject, how to choose which one? Obviously there are a lot of things I don't know, but it's quite hard to pinpoint what would be the most beneficial thing to learn right now; otherwise I would have researched it already. Maybe reviewing the recent work with the mentor, and trying to extract pain points from there could work?
- chrisbro 7y agoWe have had success at my org by anchoring a lot of the mentor/mentee discussion around our documented career ladder. If there's not a pressing specific discussion topic for one of their meetings, they can always bring that out and go through the ladder items to brainstorm ideas on how to progress. We also recommend mentors to sit in on some agile ceremonies with the mentee's team to get a feel for how the mentee's dynamic is with their team, which can spark some discussion as well. Fundamental, long-term issues can include encouraging the mentee to be more assertive, how to help their team become more effective, and how to approach navigating the inevitable politics of the organization.
- neogodless 7y agoWhat everyone has to learn over time is - why you choose to do things a certain way - how you figured out a pattern or solution - extracting the most from your tools, such as debugging - that this isn't magic, persistence can be key for tough bugs and performance problems I've had mentors just answer one-off questions, and I've had others that gave me the above insights. When I'm helping someone, I try to "think out loud" and teach them process. Language-specific structures and patterns can also be taught, but they shouldn't be the focus. More like incidental tidbits a junior can and should pick up along the ride.
- Ntrails 7y ago> I've had mentors just answer one-off questions, and I've had others that gave me the above insights. When I'm helping someone, I try to "think out loud" and teach them process. I find it incredibly hard to think out loud and work through a problem with an audience. Going away, to my own workstation, spending 2-3 minutes looking at things and investigating will often get me some ideas. Which I can communicate back. Often describing how I got there. Put me on the spot and if I don't already know the answer I probably cannot find it under scrutiny. This is my failing, I know, but it's demonstrably true.
- neogodless 7y agoIt helps if you don't think you're being judged. To me, these skills are learned through trial and error. Error is ok and I'm fine stumbling through ideas that could be wrong. As soon as you start to perform with your status as a skilled developer hanging in the balance, your brain will lean towards " fight or flight" mode and decrease your cognitive abilities.
- Ntrails 7y ago> As soon as you start to perform with your status as a skilled developer hanging in the balance, your brain will lean towards " fight or flight" mode and decrease your cognitive abilities. You are 100% correct that this is a large part of the problem, but I cannot get rid of it.
- msluyter 7y agoIt helps to have a sharply defined goal. At a previous job, I mentored someone in a support role who wanted to move into a dev position. (They were also highly motivated, which was helpful.) Our meetings largely focused on preparing for the dev interview -- filling in knowledge gaps, working through standard whiteboard questions, understanding and being able to articulate software design principles, etc... We actually covered pretty broad ground here. They got the job and I found the experience quite rewarding. After that, without the clear goal, I think we drifted a bit. Mentoring still had positive value, but I in general I think the value curve is logarithmic and after a while one reaches a point of diminishing returns.
- jcadam 7y agoWhen I started as a software engineer in the Aerospace industry, I was the "kid", one of the few young guys working amongst a large group of middle age (and up) engineers. Interestingly, there wasn't much in the way of mentorship -- just dump all of the grunt work on the kid. "It's good for you to cut your teeth on testing/maintenance/etc." And also "You need to pay your dues, son." - whenever I asked for more responsibility / new projects, etc. Now that I'm middle-aged (39), I'm one of the few older guys working amongst a large number of younger folks. Formal mentorship and leadership development programs (so you can be promoted past the Gen Xers we're currently targeting for layoffs) are real things now focused solely on the younger generation... Any other Gen Xers feeling cheated?
- klodolph 7y ago> Any other Gen Xers feeling cheated? I’m unlikely to be called Gen X, but my attitude has always been the same: it’s our duty to make the lives of future generations better than ours. Raise our children better than we were raised. Provide our juniors the opportunities and resources we didn’t have. So, I don’t feel cheated. I feel happy because my efforts are helping future generations.
- hkarthik 7y agoSimilar experience for me and we are the same age. I don’t feel cheated per say but I agree we had less opportunity available to us and less ability to affect change. The thing to remember is that we are a small generation sandwiched between two big ones (baby boomers and millenials). We never got to move the needle as much culturally as these two generations did. The boomers set the rules, which we begrudgingly followed. And the millenials are breaking the rules and we have to roll with that too. Sometimes it feels like we are caught between both worlds, and forced to choose a side where we only agree with them 50% of the time.
- jofer 7y agoAren't those of us born in 1980 (+/- a year or so) millennials? I'm about the same age (38) and I guess I count myself as a millennial. I'm certainly considered a millennial by everyone older than me. I'd always heard the cutoff between Gen X and millennial was 1975, but now that I search I'm seeing '82 or '83 a lot. That doesn't fit with how I typically see the term used, though. That having been said, I feel like there were plenty of mentorship programs when I was first starting my career, but I haven't worked for too many pure software companies. It may have been very different in actual tech companies. The more traditional corporations I've worked in tend to be big on formal mentorship programs.
- blablabla123 7y agoI wonder if this is something new, at least it seems to me new. Working now more than 10 years in Software engineering, I never experienced anyone appearing as mentor. Nowadays I both have to mentor and get mentored. This seems so weird to me. People did really well for years without it. People got really crazy skills, came up with great ideas and wrote rock solid software. This works very well when being both responsible and open to experimentation.