9 ms·
I love mentoring. I always have. I used to help out other kids in my high school programming classes. Despite holding several high-level software development po
by nathanaldensr 9y ago
I love mentoring. I always have. I used to help out other kids in my high school programming classes. Despite holding several high-level software development positions, what is the total number of times I've been asked by management to mentor more junior folks?
Zero.
I did it because I love sharing knowledge and I like seeing looks of understanding appear on my colleagues' faces when they "get something" for the first time.
The short-termism that's infested our culture--it seems like all Western culture--is truly sickening. It feels like "Well, I got mine, screw the next generation." This goes way beyond just junior developers.
- Firebrand 9y agoHow would you feel about mentoring non-technical people? Uber seems to be piloting an apprenticeship program for people from non-technical backgrounds: https://eng.uber.com/engineer-apprentices/ https://eng.uber.com/engineer-apprentices/ I don’t really know why Uber is doing it, but I wonder if in-house apprenticeship programs are going to become more of thing now.
- adventured 9y agoVocational + apprentice systems of all types are going to be a massive thing in the next ten years. Most likely we'll all be sick of hearing about it a few years from now. It's starting to pop up everywhere in the US, an idea that has caught the culture's imagination again. It's the ideal counter to the stupid practice of everybody must get a four year degree as a base qualification. And it's the only way the bottom half in the US are going to finally start making progress again.
- zerkten 9y ago> How would you feel about mentoring non-technical people? I'm not sure what you mean by "non-technical" people. Didn't we all start at zero technical skill? If Uber have gone about this the right way and have some motivated hires with some of the right basic competency then they should do well. In terms of technical mentoring I'd be very happy to engage with individuals inside a program like this. It's a very different story when you've got someone who was originally hired for a different role and you are tasked with helping them make the jump from a non-technical role to technical one. This can fail for a number of reasons, but it often boils down to motivation, and the individuals might have been better quitting to do something like a bootcamp. I will say that I have gotten a lot of benefit from coaching/mentoring non-technical people on specific things. An example would be teaching a customer success manager how to capture useful info from the browser dev tools. They have a superpower and that results in them getting better troubleshooting info to help customers.
- deleted 9y ago[deleted]
- twblalock 9y ago> The short-termism that's infested our culture--it seems like all Western culture--is truly sickening. It feels like "Well, I got mine, screw the next generation." This goes way beyond just junior developers. It's a bit of a leap to conclude that on the basis that you weren't asked by management to mentor junior devs. In fact, it's possible management assumed you would do mentoring and didn't need to be told.
- mistermann 9y agoDo you read the newspaper? Watch TV? Have you genuinely not noticed an increase in short term thinking and f*ck you, got mine mentality in North America? If not, over what time span are you considering?
- icantdrive55 9y agoThe "f*ck you, got mine" was probally always there. It seems like it's just getting worse though. Morality/ethics used to be more noticed, and rewarded. I don't know who to blame. I sometimes think it's the lack of listening to a sermon on Sundays? I do know this, I can usually spot the selfish bastards around us, and try to steer clear from them. If I can financially harm them, I try. If they happen to be family, they are emotionally cut off. I have a very financially successful sister. She is now over fifty, and misserable. She lived the American dream, but did it ugly, and now just has a 25 year old husband that doesn't care about her. Yes--she got a pre-nup. She still emails me with some new spiritual thing she discovered. It's always the same email. Why don't my brothers, and mother call me? My kids only call when they need money. What did I do? She knows what she did early on. It's no mystery. At one time she had it all. Her good looks got her so much. The looks are fading, along with that power. I knew in my twenties she would have a wake up call later in life, but I didn't know she would burn down so many bridges clawing her way up. And no--if she was a man, she wouldn't have it easier.
- JauntyHatAngle 9y agoThe impression I got was not that he was inferring that short-termism has infested culture due to the fact that he is no longer able to mentor junior devs. I believe he was saying that short-termism (which his belief is everywhere and I assume he has this opinion based on external beliefs not listed here...) is the root cause of this. Not many people hire junior devs anymore. I tend to agree with him, and believe it has a lot to do with the death of "lifers" in business. The quickest way to progress a career nowadays is to jump every few years, and that applies to both management and tech people. If people do this, what incentive is there to properly mentor a junior developer? Train them up for them to get nabbed in a few years? There is not much loyalty in both directions nowadays and that has some genuine downsides.
- TheDauthi 9y agoThis... has made me realize how lucky I am. I do get asked to mentor our junior people, and I also enjoy the look on people's faces when they get that sudden realization of how something works. And I like explaining how things work anyway; I find it's the second-best way to realize what pieces of the system -I- don't know. And - being perfectly honest about myself - I also enjoy the (brief and usually undeserved) "wow, he's a wizard!" that I get right before - just as a random example that has nothing to do with today - spending two hours trying to debug why some simple iptables rules don't work without testing that the network was working before adding them.
- raducu 9y agoI've worked at 5 companies during my 13 years of programming and while I live in Eastern Europe and not North America, I can still confidently say luck has nothing to do with it. Companies who work on long-term projects usually hire junior devs, companies that work on short therm projects don't, it's as easy as that. Companies that hire more junior devs tend to pay less and usually struggle to keep the rising star devs that they helped train for the last 3 or so years. It's just the way things are, I don't get the entitlemend of the article.
- jkukul 9y agoI totally agree, this is just the way things are. Yet, I think it's still possible that businesses in general have become more short-term oriented nowadays. An abundance of short-lived startups, companies being managed for short-term objectives, etc. Therefore, it's possible, that there are relatively more short-term projects than long-term projects these days (comparing to, let's say a decade ago).
- Vadoff 9y agoI don't think dedicated mentorship is required for junior devs. There's usually code reviews in which they can pick up on a lot, a mountain of resources online, and there's nothing stopping them from asking for help/opinions from fellow co-workers when tackling a problem.
- sidlls 9y agoJunior programmers may not (even probably don't) have a good idea of what questions to even ask. Younger juniors (e.g. right out of college) may even feel intimated or anxious that their question is "stupid". This isn't helped by the software industry's reputation (well deserved, in my opinion) of being populated by arrogant people with little or no tact or empathy. Reliance on online resources is, in my view not a substitute for experienced mentorship: there is the paradox of choice, and the plethora that creates this paradox is of generally poor quality. Except for textbook or trivial problems, moreover, much of the resource material online is too generic or only marginally applicable to the depth and breadth of technology issues that face a real business and its needs.
- Groxx 9y agoTotally agreed. This is, in essence, what I would define as the line between "junior" and someone escaping it. Learning how to discern relevant info from random and how to ask useful questions in new areas are skills that take time (and a ton of context) to acquire, but are utterly essential to doing anything beyond what other people tell you to do.
- tanilama 9y agoAsk the right question is a skill, and a good indicator for growth. If you have an ineffective team member on your team, you will know the pain. Junior dev isn't necessarily bad, some of them can ramp and contribute really fast, but some are just lacking.
- Caveman_Coder 9y ago> "This isn't helped by the software industry's reputation (well deserved, in my opinion) of being populated by arrogant people with little or no tact or empathy." I don't get this attitude at all, but perhaps that is because I transitioned into software dev from the trades. In the trades you want your apprentices to ask questions, I don't see why Senior Devs would be assholes. In my experience, when I asked my Senior Devs questions, and this was after initial research efforts on my part, they were all receptive and helpful. It is much better to ask the question as a Junior than commit to prod and create even more work for the Seniors.
- godot 9y agoI feel like the current trend of agile development process common in startups now somewhat works against senior devs' interests to mentor junior devs. There simply isn't time allocated for this. Senior devs are held accountable for what they deliver, and doing so on time. This is among other things like code reviewing PRs and attending meetings. For most senior devs working under this circumstance, the best they could do is answer questions of junior devs when they ask them. I was fortunate enough to be moved into a lead role at the current place after a few months, and expectation of my amount of individual-contribution is set lower than that of other IC members of the team. This has allowed me to spend a little more time on mentoring junior devs. I can see that for other senior devs, it simply isn't realistic to expect them to spend time on mentoring, with the agile schedule. This is how I had felt myself before moving to the team lead role.
- pbourke 9y ago> I feel like the current trend of agile development process common in startups now somewhat works against senior devs' interests to mentor junior devs. There simply isn't time allocated for this. If you're a senior dev, you should be gaming the system a bit to create the time needed to fulfill your role. Never let the keeners fill your time up to 100%, unless it's truly neccessary. There's always going to be some infrastructure that needs fixing, research that needs doing, refactoring that should happen, etc. And you should always have some slack for mentoring and whiteboard discussions. I almost always start an agile sprint with a self-generated task or two already in my queue for just this reason.
- fsloth 9y agoI've never been explicitly mentored but I've been lucky to work places where there have been colleagues with things to learn from by example and inference. There does not need to be an explicit mentor relationship for knowledge to spread if work is done in teams and culture of open communication is cherished (at least on the team level).
- kbart 9y agoWell, you don't have to be asked directly to do that. I assume, you work in senior position, so read your role description and contract, for most senior positions I have seen "mentoring" and "team leading" is explicitly written there. Sure, don't expect to get assigned time and classroom with whiteboard for teaching in typical company, as it is expected to be done on fly ("don't know something? go ask our guru").
- wanderr 9y agoFull disclosure: I work at Dropbox. Dropbox is a company that values mentorship. It is something that is explicitly called out and rewarded in performance evaluations, and it's one of the reasons I chose to accept the job offer from Dropbox. I have been lucky enough to work at a place that pushed me to be a mentor, and another place where I got to influence culture to value mentorship, and I have seen junior developers who barely had any idea what they were doing and needed lots and lots of guidance, grow into some of the most amazing and capable engineers I've ever worked with.
- cptskippy 9y ago> The short-termism that's infested our culture--it seems like all Western culture--is truly sickening. It feels like "Well, I got mine, screw the next generation." This goes way beyond just junior developers. This is a byproduct of the erosion of loyalty that's pervasive in business these days. Businesses use to be loyal to their employees and in return their employees were loyal to them. That's no longer the case because over the last 30-40 years businesses have shown they aren't loyal to their employees. Pensions are gone in favor of the 401k scam with many employers no longer even matching contributions. Medical Benefits get worse every year while the cost to the employee rises. Merit increases are virtually nonexistent and in many cases you're lucky to get a cost of living increase. Why would an employee have any loyalty to a company that treats them like a commodity? It's gotten to the point that many functions are just outsourced to another company (e.g. HR, Maintenance & Facilities, Administration, IT). The staff are employed by the contracting firm and thus they are a fixed unit cost commodity and there's no long term obligation to them.
- mypalmike 9y agoThe way to learn professional coding as a junior dev is to consume massive quantities of programming books while working on side projects. Mentoring is great, but its value is usually very local to the current needs of a team.