4 ms·
Very often you won't get that upfront research because juniors don't have the knowledge necessary to even start looking for themselves. Because you expect them
by onion2k 5y ago
Very often you won't get that upfront research because juniors don't have the knowledge necessary to even start looking for themselves. Because you expect them to come to you with evidence before they ask you, your devs will just avoid asking you and spend hours wasting time instead. Any minimum requirements are a barrier. Barriers are bad for learning.
You need to welcome questions even from people who have apparently done no research at all, or juniors will always worry that you'll accuse them of not doing the "necessary" work up front. If you're kind and approachable, and you don't tell people off for failing to meet your minimum requirements, you can guide them to finding it themselves.
- chris11 5y agoHow would you suggest helping a dev ask better questions? Explicitly giving them guidelines seems aggressive. Though sometimes I have a hard time understanding the problem, or what was attempted.
- junon 5y ago> Very often you won't get that upfront research because juniors don't have the knowledge necessary to even start looking for themselves. Advice for junior devs: Asking "how do I even go about searching for this?" is also a perfect acceptable question. Another format: "how do YOU generally research things?"
- avmich 5y agoFor both of those questions peers answering them can choose.. to actually switch to answer some more simple questions - like, what to do in this specific case. They'll even ask for details - "how do I even go about searching for this?" - "the information you need is here", or "how do YOU generally research things?" - "what specifically you want to find?" People aren't perfect.
- junon 5y ago> People aren't perfect. I think you misunderstood my intent. I was simply saying that sometimes a junior dev might not even know what question they're trying to ask, or how to go about researching a topic to grok it. Asking an experienced engineer how they would go about solving something is perfectly acceptable. That's all.
- mceachen 5y agoAgreed, it's a tricky balance. To be clear, I don't believe I've ever said these "rules" aloud. When someone comes to me for help, the first step is for them to explain the problem. The next step is for them to discuss what solutions they're considering. If they're at a loss, I open a browser window and ask them what they think a good query would look like, and pattern behavior that helps them in the future, and we work off of that for a bit before I may suggest actual implementation strategies, and walk through pros and cons of each approach.
- gregkerzhner 5y agoI would argue that those "hours wasting time" looking for an answer yourself before you give up and ask someone more senior aren't a waste - they are an invaluable part of becoming senior yourself. As a senior engineer, you will often spend hours and days stuck trying to solve hard problems with noone else to ask, and having the grit, determination and creativity to do this is one of the greatest skills you can teach an engineer. Having barriers and friction in the name of this self sufficiency is totally fine and likely beneficial to the development of a junior dev.
- avmich 5y agoI would argue that those hours can really be wasted. Yes, learning the system brings long-term benefits. But the way the system is learned can be of different effectiveness, significantly different. Having a lot of questions could mean, that the onboarding isn't set right - and this can very significantly influence the developer productivity, even middle-term. That doesn't mean the newcomer doesn't need to think or is allowed to abuse the system :) - in my experience, the situations when the questions are legitimate are just too frequent, so it makes sense to not consider questions undeserved out of hand.
- rramadass 5y agoAbsolutely correct! >you will often spend hours and days stuck trying to solve hard problems with noone else to ask, and having the grit, determination and creativity to do this is one of the greatest skills you can teach an engineer I would argue that _is_ the very definition of an Engineer. Also it is an invaluable necessary skill to cultivate to navigate Life itself.
- rramadass 5y agoDisagree. With the resources available today there is just no excuse to not do some preliminary research on your own before asking others for help. Nothing is more infuriating than when somebody comes to you with some detailed question the answer (or an idea as to the possible answer) to which is readily available a Google search away. You have to do some homework before asking for others time to solve your problem. This is the only way to mentally get involved and engaged in problem-solving and is a necessary part of learning. Too many people nowadays don't even want to take the first step but want everything spoon-fed. This should not be tolerated nor encouraged.
- xtiansimon 5y agoThese two comments summarize my experience as a self-taught programmer. Let me explain. I discovered StackOverflow and conformed to it’s rules, which closely match the first comment. When I get stuck and my questions receive little or no attention, I start with the assumption that I don’t know enough to ask a good question, or my approach is unconventional. It’s then that I go to a more discursive community like Reddit. That was, until, COVID made my local Python MeetUp group go onto Discord where I can participate much more often. Discord is the forum where your research and effort is valued and appreciated, but not absolutely necessary. This seems to match the second comment. You can’t expect to receive a definite answer, but you can have an extemporaneous discussion and learn more common, orthodox solutions missing from your knowledge and experience. YMMV