Stop Solving Problems for Your Development Team!

  Рет қаралды 36,114

Thriving Technologist

Thriving Technologist

Күн бұрын

Пікірлер: 151
@HealthyDev
@HealthyDev Ай бұрын
Are you mentoring people by challenging them to be more resourceful? Have you ever been led this way?
@user-uk9er5vw4c
@user-uk9er5vw4c Ай бұрын
IMHO, hybrid + scrum or pure scrum prevent this a bit as it rely a lot on accountability. I do agree with you, but in reality, in my World (remote work), you must be really good at handling communication about blockers, etc, or you'll be easily fired
@kneel1
@kneel1 Ай бұрын
Have always tried to do this as much as possible, especially later in my career. Sadly it doesn't always protect your job
@barrymanilow3893
@barrymanilow3893 Ай бұрын
Man I needed this. I've got 4 people peppering me with questions all the time. My teams lights up like a Christmas tree every morning
@MartinoNotts
@MartinoNotts Ай бұрын
If you want something done; ask a busy person. Be more aloof, let them cook, then check back when it suits you and more often than not; it's resolved. Being less helpful makes them do the work.
@rikyscara
@rikyscara Ай бұрын
Every now and then a video pops up that could change your entire work approach. I don't know if this is one of them but it's definitely an eye-opener. Thank you for ALL your content.
@HealthyDev
@HealthyDev Ай бұрын
Wow, thank you!
@SvetlinNikolovPhx
@SvetlinNikolovPhx 27 күн бұрын
I try to always give colleagues the hints where to look, what analogues to consider, but ultimately come up with the conclusions and solutions themselves. Long term thinking is a top skill.
@alimarentertainment-music
@alimarentertainment-music Ай бұрын
I spent a lot time being the resource and I appreciate your thoughts on how to "Coach" vs just providing answers. I have recently be on the reverse end where I needed help and answers. What I've experience is the attitude of the learner has to include..."I want to learn this"...if not they just want the solution over and over and they will ignore or resent the coaching.
@HealthyDev
@HealthyDev Ай бұрын
For sure. And equally true, the coach has to communicate their intent that they wish to help the person they're coaching grow and get better. If either sides of that relationship aren't in agreement, it will just feel like manipulation.
@Idinkthereforeiam
@Idinkthereforeiam Ай бұрын
I really enjoy your guitar transitions! They’re a unique touch I haven’t seen in any other KZbinrs’ videos
@HealthyDev
@HealthyDev Ай бұрын
Thanks! I'm trying to make these videos a bit more fun.
@marcelvanLare
@marcelvanLare Ай бұрын
I changed my attitude in some projects also. A developer should struggle to get it. But sometimes it feels never ending. So be it then, and project will go slow with a frustrated manager. Your suggestions still requires time and people with potential. Sometimes it is or seems not to be there. On the other spectrum: there are also occasions were you work together in a small team with experienced devs and have real flow together. That is great.
@DagarCoH
@DagarCoH Ай бұрын
What are people with potential for you though? To me, this only means people who want to learn and grow.
@marcelvanLare
@marcelvanLare Ай бұрын
Probably yes. Meant intelligence: problem solving, analytical skills. To get there you will have an attitude to learn.
@drottningu
@drottningu Ай бұрын
On your point about code reviews, I also think it is powerful to have your more junior employees or peers come up with an implementation plan before they start in on a problem. Review it with them before they get started. It can save so much time and grief to be on the same page from the start, rather than discover major issues in a review after they have started down a path that you as the lead have experience in avoiding. Thanks, you have such great insights and are a true role model. Happy coding!
@JonLikesStats
@JonLikesStats Ай бұрын
I dont know if it is divine intervention or the algorithm, but sometimes you make the video that changes the way i think about one of my struggles. Thank you.
@sarahfox8837
@sarahfox8837 Ай бұрын
Worst tech lead I ever had was a micromanager. If I ever tried to figure out something myself, I got shot down with 'No, that's wrong.' No explanation as to why, just do it their way. They were always stressed because everyone had to get their approval for everything, but that's what they'd trained everyone to do.
@HealthyDev
@HealthyDev Ай бұрын
I wonder if there's a way you can non-threateningly show some curiosity in their prior career experiences. There's no certainty, but I wouldn't be surprised if they just learned that behavior from someone else and don't know there's another way.
@YossiZinger
@YossiZinger Ай бұрын
I always take that approach, not just for the group I lead but for anyone who approaches me with questions or problem. However, there are many who don't care about growing or learning, they just want to get the answer and move on. And they get annoyed when you try to teach them how to get to the answer. I'll try to use the 'what if I weren't here' method next time.
@HealthyDev
@HealthyDev Ай бұрын
Totally relate. I had to get more explicit by telling people straight up "I could give you the answer here, but that's going to keep you being dependent on me. I want to see you grow and get rewarded more in your career. So I'm going to ask you some questions to challenge you to draw upon your resources and think bigger to get through this." If they don't want that, at least you know for SURE they just want to coast.
@sjfsr
@sjfsr Ай бұрын
I hear this loud and clear. I became the tutor in college, after I finished C++ Advanced Data Structures in a few weeks . I did get frustrated with who I was helping and gave them the solution. Eventually, I stopped and just gave strong tips once morality kicked in. I enjoyed tutoring though, it showed me how other students thought and that was educational.
@aslkdjfzxcv9779
@aslkdjfzxcv9779 Ай бұрын
teaching is an excellent way to learn.
@romerop15
@romerop15 28 күн бұрын
I just started as a TL and I have to admit that your videos have been really helpful. Thank you for doing this.
@HealthyDev
@HealthyDev 28 күн бұрын
You're welcome! I'm glad they're helping out.
@skavihekkora5039
@skavihekkora5039 Ай бұрын
Left alone in the dark (tech leads departing in beginning of big projects) was the best thing that happend in my professional life.
@HinakaJingen
@HinakaJingen Ай бұрын
No matter where you are in your journey, learning how to learn is essential. It’s a two-way street - sometimes the coach becomes the student, and that humility drives growth for everyone.
@HealthyDev
@HealthyDev Ай бұрын
For sure. When I'm coaching someone, I'm explicitly serving the other person in the relationship. I avoid bringing my wants and needs into it because my goal is purely the other person's growth. The other person could do that for me another time. I guess in my experience it's hard to really serve someone powerfully if both people are trying to coach each other at the same time. Helping each other is one thing, a formal coaching relationship is a little different. At least that's been my experience. Does that make sense?
@Salamaleikum80
@Salamaleikum80 Ай бұрын
Don't forget to be condecending about it and say things like my manager does: "We had someone who could see every detail." or "I don't really want to tell you that." Or "You should already know that" also a great one was "Didn't they teach you that in University?"
@snorman1911
@snorman1911 Ай бұрын
Well, didn't they?
@HealthyDev
@HealthyDev Ай бұрын
That's definitely not coaching. That's just being a jerk.
@aslkdjfzxcv9779
@aslkdjfzxcv9779 Ай бұрын
xD
@Salamaleikum80
@Salamaleikum80 Ай бұрын
@@zubairm8554 i am in the same situation right now. Yesterday "This is really not that hard." Like jeah it isnt hard but it's impossible to find in this UX Unfriendly App that this company build for the last 20 years. Like we are still using hungarian notation.
@Salamaleikum80
@Salamaleikum80 Ай бұрын
@@HealthyDev True I talked to some peers and asked wheter or not i am just sensitive or he really is passive agressive and it seems that they have the same issue. No clue how I am going to deal with it long term because I am afraid that he might be between me getting a full time contract and the company. He doesn't seem to be someone who is going to be diplomatic tbh. I also have no way of creating boundaries with consequences(as you teach in your boundaries video which is a great video btw)
@tincustefanlucian7495
@tincustefanlucian7495 Ай бұрын
How much I fell the pain described in this video ! I have 2 people in the team where I'm a Tech Lead and they cannot ever carry the weight of their tasks without huge waste of time from my side. And without my support they develop in a disastrous manner pulling back the confidence of our business and users. Other people in the team had no struggle to become independent and deliver quality.
@crypticsailor
@crypticsailor Ай бұрын
Same experience. Need to hire the right people but Corp America doesn't always make this possible.
@HealthyDev
@HealthyDev Ай бұрын
Have you let the people you're leading fail? Or are you trying to cover for them?
@crypticsailor
@crypticsailor Ай бұрын
@HealthyDev no because in some places you actually have to produce work to get paid. A junior dev should have some minimum qualifications and be trainable or able to learn. You don't pay people at a job to fail. You fail on your free time or else may be at work for the wrong reason or be at a failing organization. The time for them to fail is not on a production code base in real life on real life software people pay for. Being without a job or having your team laid off if you're not selling some guru solutions is not being healthy
@crypticsailor
@crypticsailor Ай бұрын
Granted does not mean there should not be some freedom and flexibility but no, you do not have shared codebases that are supposed to be maintainable on production software with people failing. If you have software no important stakeholders are on or some flex time sure but this is not what software devs are paid for.
@HealthyDev
@HealthyDev Ай бұрын
Failure is a normal part of software engineering. I don't understand how this can be a new idea if you've been in the industry for a while. Failure of a product in its market, or failure of the business overall - of course we don't want that! But failure on individual tasks, is the only way people learn. If you expect people to never fail they will only put in bare minimum and never grow. People tend to think allowing failure means "allowing sloppy work". That's not true. People often have to do things wrong, before they do them right. The system and processes should account for this including estimation and commitments. There is a difference between allowing for human error so people take risks and grow, versus continuing to employ someone who ONLY fails. Hope that helps a little with what I'm trying to get at here.
@Icthi
@Icthi Ай бұрын
These are really great thoughts, and they really resonate with me. I struggled with making space and time for good coaching with a leadership team above me over-valuing the short-term. I felt like letting my team struggle (developing them) looked like a lack of productivity to my mgmt. ultimately I decided to leave that situation. I am looking forward to reintroducing healthy mentoring back into my work without feeling squeezed
@HealthyDev
@HealthyDev Ай бұрын
I understand the frustration of trying to do the right thing but not being supported. Glad you made the right choice for yourself.
@Erik_The_Viking
@Erik_The_Viking Ай бұрын
This is so true as a manager. I have a side gig as a college professor and I experience the same thing just in a different context. You're absolutely right that solving problems for people creates a dependency - they need to learn how to learn. Asking questions is crucial so they can start thinking on their own and as you mentioned taking ownership.
@showman722
@showman722 Ай бұрын
Learning how to learn was the very first thing I talked to my new coworker about. Without that skill, it's hard to do any job
@nightowl9019
@nightowl9019 Ай бұрын
The problem with this is that they do not tell you enough information but they was expecting 100% correct implementation without bugs or questions asked. If you implement something one way they going to find a better approach after that they will tell you are not good enough because you are not a mind reader and do not have a senior or architect level of knowledge as a junior. They don't think in incrementations when designing stuff(ah they dont designing just tell you what they want). The complexity is way too high and they need only seniors because they do not want to tell you anything just solve the problem thats all. After the junior create something of course there is the architects and seniors and after they tell you that this is .... - I will take this project instead of telling you anything. And of course there is no time for relaxing, constant pressure to meet deadline thanks for the agile sprints. If you good enough you are going to be more pressured, and you will code all day just to not get fired immediatly and you will be layed off in the end of the year. Because they find out that a senior is more capable than a junior. The software architect job should be that designing stuff and tell juniors how to implement a feature. But they have so many other duties that they just won't going to do this, the investors are expecting unrealistic deadlines and they do not want to take responsibility if they are going to create a bad software design. It is easier to just blame a junior if the project fails because he designed the code badly. They speaking of take responsibilty and be a project owner as a junior. I think this is just beeing inconsiderate what a junior developer need. I think most of the teams need more software architects who can help designing features and telling HOW to do things before they involve any other programmer. I think its too late after the pull request is created that there is a design issue with this code and needs to be refactored or start from scratch. And to tell that this programmer is not capable because he is not created 100% code. Might be because of the lack of designing and communication. But everybody wants to be a leader of course thats easier than to think forward and not to blame junior people.
@HealthyDev
@HealthyDev Ай бұрын
I've talked about this in some other episodes, but a big part of being an effective software developer (in my experience) is becoming a detective and lawyer. The business and/or product managers will never provide requirements at the level of detail we need to implement them. They aren't writing the code. So it's up to us to ask clarification questions and get agreement, no matter how many back and forth conversations that takes. There can be pressure from management to get estimates before this is done. That's where it's essential to pushback. It's how you pushback that I think people struggle with. They just say "no, I'm not ready to commit". Of course management is going to be upset with that. But if you lead them and show them the way, they can support pushback. "I'm not ready to offer an estimate on this yet, it's missing critical details that will make any estimate unreliable. Let's get a 2 hour meeting with the product manager and I on the calendar to fill these gaps. After that I can get an accurate estimate for you" is one way you can show leadership and control over the process.
@kagame6524
@kagame6524 Ай бұрын
This is great. Glad you called out validating that person might be frustrated; that’s usually something that causes me to ask questions rather than think through the problem myself due to urgency/pressure
@theanswer1993
@theanswer1993 Ай бұрын
Once I worked with a "senior" developer who called me for a "short call" everytime he got assigned a new task. He then continued to ask me how he should solve that problem. First few times I though sure I'll help him but then it became annoying as it became obvious that he was just using me to get his shit done. Ah and also his solutions delivered some of the worst spaghetti code I've ever seen
@hikemalliday6007
@hikemalliday6007 Ай бұрын
Ive only worked my first job for about 2 months now. Interesting to keep this in mind. I try to exhaust all resources and try a list of things before reaching out, but month over month I realize in that struggle I grew. Frustration can come easy though, because I have this pressure I put on myself to keep velocity up. Fear of lay off, bad job market etc. But as long as I can show them improvement month over month, I think I'll be alright.
@HealthyDev
@HealthyDev Ай бұрын
The flip side to the advice in this episode is to ask for help when you need it. There's an art to when to apply both pieces of information, I wish it were more cut and dry!
@chancepaladin
@chancepaladin Ай бұрын
"what if I wasn't available" ..."its cool it'll still be here when you get back"
@turculaurentiu91
@turculaurentiu91 Ай бұрын
That feeling when you come back from some time off and see the pile of crap that piled up waiting for you...
@charlesparker6167
@charlesparker6167 Ай бұрын
I recently had to deal with the same issue and I was so fed up with helping other people. Thanks for the input!
@HealthyDev
@HealthyDev Ай бұрын
For sure, this stuff is tough. I still struggle to this day with letting people fail when I know it would be worse to help them. Of course every situation is unique...
@anaradun234
@anaradun234 Ай бұрын
I gave you 1Kth like because there's so much to learn about how people behave and how to work best with them in the tech industry. 👏🏻
@HealthyDev
@HealthyDev Ай бұрын
Thanks!
@llgmusic
@llgmusic Ай бұрын
I find this topic so interesting and so in tune with you
@vincepreziose5877
@vincepreziose5877 Ай бұрын
Living documentation is a solution as well. Capturing shared learning and giving team members access to edit. Team ownership. Confluence is an example (although some people hate it, whatever, it's just an example to illustrate a point). README's can capture some stuff. Links to Confluence if it makes sense. Confluence can link to a video repository (demo's, KTS's, etc.). Socratic method can be a powerful tool. If you're talking about hands on management of problem solving and cleaning up dev thought processes, that goes with hiring someone who is very green. I tend to encourage senior engineers to get involved. Seniors need to learn to lead and situations like this are perfect opportunities for that. As a consultant, that senior engineer could be a client champion to lead differently.
@daviddickey9832
@daviddickey9832 Ай бұрын
Learned dependence is a real thing, I see it quite a bit. It's often coupled with an implicit asking for permission. Folks that feel empowered to solve problems themselves will act more independently and become more competent on their own.
@romeoborja3316
@romeoborja3316 Ай бұрын
I am guilty of this... it is hard to lead the team while you also have own task to attend too... I will try this more... thanks
@HealthyDev
@HealthyDev Ай бұрын
It's a real challenge but it's worth it!
@dustin6336
@dustin6336 19 күн бұрын
Loved this video. Perfect timing for me. I may end up on your Discord server. Thank you!
@jason_v12345
@jason_v12345 Ай бұрын
2:45 "If you really want people to grow" It's not about what I want. If the developer is still young and enthusiastic and has their whole career ahead of them, sure. But if you're working with just about anyone else, THEY don't want to grow, so why try forcing them?
@HealthyDev
@HealthyDev Ай бұрын
I understand what you're getting at here. It's true you can't force someone to grow. I'm assuming throughout this entire episode that someone you're coaching wants to get better at their job. If that's not the case, a conversation about that needs to happen first - it's a bigger problem.
@mohsenmansouryar6446
@mohsenmansouryar6446 Ай бұрын
great advice for someone in a leadership position. my problem is i work in a team where there's really no hierarchy (except for the one tech lead who has all the permissions). also a no blame policy which disincentives ownership imo. almost everyone thinks of themselves as senior fullstack devs and experts in what they do. and when they ask you to pair, it's basically them asking you to join and do their work while they watch and slow you down. there's little interest to actually learn things from a senior, let alone being coached by one. and as a dev in the same position i feel like i cannot change that. i have however tried similar strategies in code reviews with a few new devs. always appreciate your posts btw, they just make sense.
@HealthyDev
@HealthyDev Ай бұрын
Ah, so it's a "flat organization". Basically there's one boss and everyone else is at the same level? Am I understanding that right?
@mohsenmansouryar6446
@mohsenmansouryar6446 Ай бұрын
@@HealthyDev yes I think that's very close. basically it started as a startup made by a couple of people from health industry and only one of them who is a co-owner and tech lead is currently left. the rest of us are basically same level, can contribute to anything and everything. somewhat completely the opposite of what you would expect with a team who has clear module owners. I found it interesting in the beginning and everybody was very nice and welcoming, but now I see the flaws. it actually hit me when two months in we had two workshops with a veteran developer/consultant with like 40 years of experience and successful startups. devs were either showing no interest in what he had to share, or deemed his advice as "basic computer science" or "no silver bullet in programming" (so basically no one's right) or "his idea" vs "our idea". over a short time they basically ignored everything he shared even the relevant points.
@HealthyDev
@HealthyDev Ай бұрын
Yeah I've had the experience of working twice at flat organizations and it's just as you said. Sounds great on paper, but has some serious drawbacks...
@HealthyDev
@HealthyDev Ай бұрын
@@mohsenmansouryar6446 bummer. Well people can grow and learn from their mistakes. Hopefully as they continue progressing in their career, they start to see some different ways of working with other people.
@mr.keith31337
@mr.keith31337 Ай бұрын
Solid advice, have worked with many in leadership positions who ought to watch this!
@jprince1993
@jprince1993 Ай бұрын
Ah man I've not been doing this long but already failed at this. Such great points here though and I'll take them on board!
@houstonMN2000
@houstonMN2000 Ай бұрын
Metaphorically: The coach must resist the temptation to jump down from his seat and leading the horse around.
@ngoh2510
@ngoh2510 Ай бұрын
This is super helpful!!!
@LordHog
@LordHog Ай бұрын
It is fine to allow someone to struggle comes in direct conflict with “estimates” (which really are deadlines) to get a “story” done within a sprint. Schedules never allow learning to be baked into the equation. In my nearly 30 years in software have I seen a manger saw a project should have to shift the schedule to the right for a person’s lack of knowledge, experience, insight, or whatever you want to call it.
@HealthyDev
@HealthyDev Ай бұрын
It's a tough balance, but I'd rather a developer learn and take longer than ship something that comes back to haunt us. If you've never encountered a manager in 30 years who understood this, you're not alone. Our industry is filled with managers who don't understand the unique aspects of knowledge work. They really should force managers to study W Edwards Deming before they take the role.
@robfti
@robfti Ай бұрын
Great advice again.
@TYNEPUNK
@TYNEPUNK Ай бұрын
what an amazing video, thank you.
@Rcls01
@Rcls01 Ай бұрын
"Give man a fish, and you feed him for a day. Teach a man to fish, and you'll feed him for a lifetime"
@HealthyDev
@HealthyDev Ай бұрын
Entire episode summarized in one sentence. Thanks, this will help the people who complain that my videos are too long so they can move on and get back to whatever else they want to complain about ;)
@FixItOrNot
@FixItOrNot Ай бұрын
Very good understanding of productive autonomy!
@MB-br6wf
@MB-br6wf Ай бұрын
What happens if you're close to the deadline and they still haven't figured it out?
@HealthyDev
@HealthyDev Ай бұрын
You've got a few options I can think of. Extend the deadline, do it yourself, or raise visibility that they failed. There are positives and negatives to each. The solution is going to be very contextual to your situation. It could be that they underestimated for their skill level, other people's expectations were too high, they need more practice and familiarity with the tools, requirements were unclear, or they are simply not skilled enough to make progress without more support. I think people often just jump to the conclusion that it's a lack of skill. More often, I find it's the system.
@pawelnotts
@pawelnotts Ай бұрын
Before I watch this - I guess this will also apply to infra engineer/architect vs 3rd line service desk engineers?
@okamichamploo
@okamichamploo Ай бұрын
Yeah my favorite are the people who never respond with more than a single sentence and almost never give you all the information you need to actually know what your doing. Hey Jim I ran into this error what should I do? Run the xyz.bat Oh ok, um, where can I find the xyz.bat? In the Blue folder. Hey sorry I looked through the entire project and I don't see any blue folder. Not in the project. It's in the company shared documents server. Oh ok, um, it looks like I don't have access to that Server. Yeah I need to give you approval. Oh I see. Um, can you? Can I what? Can you give me approval for the server so I can get the bat file? Oh you need to talk to George first.
@boenrobot
@boenrobot Ай бұрын
As someone who has had a similar scenario from the "people with answers" position, I can tell you that often times, I give the full info, and yet it feels the person ignores 90% of what I say, as I get no follow up questions (just a "thanks"), only to ask me the same question a day later, adjusted based on the 10% they did read/understand. So... what you are experiencing could be an over correction in the opposite direction. They give you the one piece they know you WILL read and understand, so that you do the full walk, rather than them giving you the path, only for you to try and drive to the destination. To paraphrase your example from my view: - them: hey, I got this error, what should I do? - me: do you have permission to open the shared server? You need to run xyz.bat from the blue folder there. - the what? No? - we have a shared server, it has a blue folder in it. Xyz.bat is in it. You will need to run it, so that it can do its magic to fix the error you are seeing. Speak to George first. Ask him to create you an account, and I can then approve your account onto the shared server. After that, you can go to the blue folder and run xyz.bat. - ok, thanks. [Day later] - them: hey, so about this error, I talked to George about it. He told me you can approve my account. - me: yes. What's your account? - i don't have one. - what do you mean you don't have one? George was supposed to make one for you. - oh... let me ask him. [Day later] - them: so, about that error... My account is X. - me: ok, I have now approved you on the shared server. - thanks [Day later] - them: I still have this error. - me: did you run xyz.bat? Did it error or something? - oh, I was supposed to run it? I thought i just needed to have it present... sorry. - try to run it now. - ok... - and...? - I can't find it. - in the blue folder!!! - oh, I can run it from there? I thought I needed a copy, which I did make before, though idk where I put it. - yes. No need for a copy. Run it from the blue folder itself. - ok. [Few minutes later] - me: did you run it? [Few minutes later] - them: it is running - me: ok, and...? - it finished. No messages. - good. Now the original thing? - no errors anymore. - finally!
@HealthyDev
@HealthyDev Ай бұрын
Have you asked them to take notes during your conversations? This helps hugely for me. I will even call someone out (nicely) if I don't see them typing out what I'm saying for a long period.
@boenrobot
@boenrobot Ай бұрын
@HealthyDev if you're talking about my case... we're talking chat, so... my text message _is_ the note... Though yes, I have similar stories in face to face too, except those tend to be resolved quicker, as I can see the person not taking the action
@Icthi
@Icthi Ай бұрын
LOL this! Well written. Hahaha. I have learned to work well with these folks by using what they don’t tell me as learning exercises. Inevitably I surprise them later by being able to help them or make them think, bc unlike everyone else, I took the time to figure it out for myself. These people aren’t good coaches, but you can still coach yourself and have them as answer sheets to check your work.
@Zutraxi
@Zutraxi Ай бұрын
Great video. It was hard to watch. Way too close to home, as I’m trying to change how we handle these situations. I have one question. We conduct release reviews of the code before it is put into production. Preferably, it has to be a member that didn't work on the feature. Often that role falls on me. It is to allow unbiased eyes to evaluate the code. It falls on me because others can't, but a double review is expensive in time and effort, so we don't do it. Should I somehow force leadership to understand that it is worth double-reviewing to help teach others the skill of static analysis and testing their hypotheses on other people’s code? Or is there another way I can make it happen? As a senior, I feel responsible for our group's output. Performing a review to point out all potential mid-high issues I see seems to be the way I can contribute to that goal. Though it might make them rely on me, which I can't seem to solve . I’ve gotten PRs that haven't even been run, or where the feature's button hasn't been pressed in one of the core scenarios. At that point, it even feels lame to say, "Hey, do you think this button fits the specification document?" I agree with all of the video and find it difficult to address the nuance of the issue. In the meantime, my boss just doesn't want juniors or other team members to struggle too much. They think sitting with a problem for more than 3 hours is too much and want them to move forward.
@HealthyDev
@HealthyDev Ай бұрын
It sounds like you've got some system level issues that need to be fixed. If there's a hard rule that nobody can struggle more than 3 hours, you could possibly work around that by slicing work into much smaller pieces to allow for more struggle time per unit of work. Do you have any influence over your own estimates? Can you "bake in" time to allow you to coach the juniors? Or time to coach other people on doing code reviews? Maybe you have someone review a tiny PR that's just a fraction of one of your tasks for practice? Maybe have them review it when it's not about to go into production, so there's less pressure? There's got to be ways to level people up. Whenever people tell me it's impossible, I guess I start thinking "what else hasn't been tried?"
@aslkdjfzxcv9779
@aslkdjfzxcv9779 Ай бұрын
leadership wont tell you what to do....a manager might. good mentoring is a personality type. "back in my day" we didnt have/need mentors.
@atsanonwadsanthat166
@atsanonwadsanthat166 Ай бұрын
"Let people struggle" I had a teammate whom I did exactly that. He left within a week of hiring. Sometimes, Gen Z is just lazy.
@HealthyDev
@HealthyDev Ай бұрын
Not sure if you just didn't watch the full episode, but the struggling has to be coupled with resourceful questions that provide direction. I get into that in the second point.
@atsanonwadsanthat166
@atsanonwadsanthat166 Ай бұрын
@HealthyDev I didn't. Why should I?
@HealthyDev
@HealthyDev Ай бұрын
@@atsanonwadsanthat166 you should irritated. What's up?
@atsanonwadsanthat166
@atsanonwadsanthat166 Ай бұрын
@HealthyDev The first point didn't sit well with me (quite an understatement), so of course I felt irritated and shared my own experience. The rest of the video might be useful, but I couldn't care less at this point.
@HealthyDev
@HealthyDev Ай бұрын
@@atsanonwadsanthat166 I see. So would it be fair to say you tend to judge someone's opinion purely on first impression, and don't like to hear their complete message?
@bmiller949
@bmiller949 Ай бұрын
When asked for help, I always provide a "hello world" type answer. I am looking for such fundamentals of beginning to end. I get some irrelevant snip of code when I ask the seniors a question.
@skyhappy
@skyhappy Ай бұрын
So you give an irrelevant piece of code so that they have to put in effort before they ask you again?
@HealthyDev
@HealthyDev Ай бұрын
Many senior developers have never been shown a model of effective mentoring. I'm not trying to get them completely off the hook here, but you can't teach people what you don't know.
@ByanGwok
@ByanGwok Ай бұрын
Very useful suggestions, I saw this type of issues appeared time to time at my work place, and previous work place.
@vladluteen2299
@vladluteen2299 Ай бұрын
How do you deal with developers that think they know better so they make changes to a system they don't understand and create technical debt even though they were asked not to make those changes. Its like busy bodies that think they always need to be upgrading or refactoring something before they even understand the system.
@HealthyDev
@HealthyDev Ай бұрын
If I were coaching them, I'd be asking them questions about why they decided to make the changes they did. I'd be asking them questions about what negative consequences there could be for other people by the way they made the changes, to get them to think. I'd be asking them how they could go about communicating their changes in the future that would get a better result. If they don't seem to care, I'd be asking them if they're willing to accept negative consequences if they aren't open to working in a way that's better for everyone.
@MopeyFand
@MopeyFand Ай бұрын
God, I can't agree more with this.
@shardator
@shardator Ай бұрын
I don't think a bunch of people without motivation to work independently can be called a "software team".
@VforVanish
@VforVanish Ай бұрын
Well you can ask for raises and don't get fired because the project will suffer if you are not there. As long as it's not too much i don't mind not helping others even if they take the quick path and don't struggle even for a bit before asking.
@JamesSmith-cm7sg
@JamesSmith-cm7sg Ай бұрын
How to handle devs who lean on you for the resourceful questioning and don't seem to learn from it?
@HealthyDev
@HealthyDev Ай бұрын
Another aspect of coaching is helping people create structure. I didn't talk about it in this episode, but that could help. Making sure they take notes, having checklists, and measuring progress in some area they should improve are possibilities. I would need to know more about specific occurrences to provide anything concrete. Maybe that helps a little?
@disklamer
@disklamer Ай бұрын
I could post an insightful comment here, but that will rob you of the learning opportunity to figure out why you are wrong.
@IkeFoxbrush
@IkeFoxbrush Ай бұрын
3:40 Personally, I like to let people struggle for a week before I give them access to their email accounts, just so they can grow and learn :P
@HealthyDev
@HealthyDev Ай бұрын
LOL!
@bloodandbonezzz
@bloodandbonezzz Ай бұрын
Sounds fun 😂
@gaiustacitus4242
@gaiustacitus4242 Ай бұрын
You will typically only find one or two people within an entire company who can solve complex problems with an effective and efficient approach. If these people do not provide the solution, then you can count on the solution that is implemented being of poor quality and this will come back to haunt you after the application is in production.
@HealthyDev
@HealthyDev Ай бұрын
What if the one or two people who can solve the complex problems coached other people to do what they can? That's the only way you get out of having critical path heroes at companies.
@gaiustacitus4242
@gaiustacitus4242 Ай бұрын
@@HealthyDev No amount of coaching will ever create genius, and it takes genius to create innovative, effective, and efficient solutions. The only way to avoid the need for critical path heroes is to leave the technology sector and pursue a line of business that doesn't require highly intelligent and talented people.
@HealthyDev
@HealthyDev Ай бұрын
I think you know I completely disagree, but I understand why you might feel that way. It is truly a thing to behold really amazing people doing their job. Unfortunately software development is a team sport and there aren't enough A players to build a company on.
@gaiustacitus4242
@gaiustacitus4242 Ай бұрын
@@HealthyDev Companies mostly need B and C team members to perform the grunt work, but the real value is generated by the A team. You can outsource most of the work done by the B and C teams if needed, but loss of the A team will lead to financial ruin due to the inability to ship new products or to maintain existing ones. I've been working for and managing technology companies for more than 45 years. The larger technology companies my teams have developed solutions for had no A team members and most of their employees couldn't qualify for our B teams. I've never worked at any company where there were more than a couple of handfuls of A team engineers, and that was in very large organizations. I'm also not saying to try to train your B and C team staff, but it is unrealistic to expect them to rise to the level of the A team. Genius is born; it can't be created through training.
@gronkhfp
@gronkhfp Ай бұрын
@@gaiustacitus4242 Not many people were born genius. Most people grow by practising and learning. The bell curve states that most people are pretty capable
@ernststravoblofeld
@ernststravoblofeld Ай бұрын
So, don't solve problems? Play games with your team instead.
@theroboticscodedepot7736
@theroboticscodedepot7736 Ай бұрын
I think you are completely wrong! If you are the team lead and people have questions then the buck stops with you and you need to answer their questions and make sure they understand the task at hand, PERIOD. Now, having said that if they continue to ask the same questions or similar questions over and over that the previous answers you provided should have explained then you need to consider moving that person to a different role or completely remove them from the team. After a two or three weeks you should be able to weed out those that don't belong in the role they are assigned. If "higher ups" won't let you reassign or remove people then either suck it up and deal with it or find yourself another job. Sorry to be harsh about it but that's the industry and also life.
@HealthyDev
@HealthyDev Ай бұрын
Even helping someone understand the task can be used as a coaching opportunity. If this is the only way you've learned to work with people, I understand. It's what most people are taught and are dealing with. For the rest of us, there are better ways. But they require having an open mind and thinking long term vs. short term.
@bjorn1761
@bjorn1761 Ай бұрын
​@@HealthyDevjust to say a big thank you to you. Im an architect and teamlead and this video is so spot on for me and the company Im working for! In our company, we know we need to help grow junoirs but up until now, I understand I, at least, was doing the wrong thing! I will try your suggestions and try to change my perspective.
@HealthyDev
@HealthyDev Ай бұрын
@@bjorn1761 that's great to hear. You're so welcome!
@TheRobinrosenberg
@TheRobinrosenberg Ай бұрын
too long, but correct
@PaulSebastianM
@PaulSebastianM Ай бұрын
Based.
@djcardwellai
@djcardwellai Ай бұрын
oh don't be that guy man.. just let the kid next to you copy your homework so he can have an idea of what to study.
@kajenkirubah1228
@kajenkirubah1228 Ай бұрын
Chatgpt my friend. Just ask questions, the right questions, drill down deep, trouble shoot, test, and eventually chatgpt will give you give you the rest.
@cableshaft
@cableshaft Ай бұрын
Yeah, I'm not sure if the recommended approach works as well when ChatGPT exists. ChatGPT does not teach this way, it does the best to just straight up give you a full answer, and as engineers become more reliant on this (for good reason, it's a fairly reliable, and sometimes the only quick way to get around roadblocks) and used to getting answers like ChatGPT gives them, they may not respond so well to a mentor that will let them struggle and ask questions instead of giving answers they clearly already know. I know I would not be able to work as fast as I have on some things this year without ChatGPT, especially as I've found myself on teams with other senior engineers (but have way more experience on the project) that will periodically ignore my questions or give very 'throw some quick thought out there to make you go away' answer. And I'm someone who's had 20 years of experience across many industries and tech stacks, sometimes on teams where I'm the only programmer so I'm used to figuring things out on my own, if I'm asking there's likely a good reason for that (and part of that is management isn't giving deadlines with enough slack for me to just struggle to find the answer, especially considering I'm a consultant on the project anyway).
@nikarmotte
@nikarmotte Ай бұрын
Teach a man how to fish and you feed him for a lifetime.
@pedrofpsimoes
@pedrofpsimoes Ай бұрын
The problem is when the team itself is highly talentless and not willing to evolve
@HealthyDev
@HealthyDev Ай бұрын
If that's really true, people need to be let go. But is it really true, or is the system failing them? Hard to know without more context.
@FlushDog
@FlushDog Ай бұрын
@@HealthyDev This happens a lot after layoffs, which are a common occurrence now. Some experts are retained for business continuity purposes and everyone else is replaced by juniors or contractors. The only person at risk of losing their job is the subject matter expert.
@GregorioVazquezJr
@GregorioVazquezJr Ай бұрын
Teach others at work and hr needs you less
@countbrappcula
@countbrappcula Ай бұрын
If you share too much, especially as a contractor, shady ass colleagues will see your generosity and "stupidity" and take credit for your genius and hiring managers will prefer to keep cheaper FT employees after they've sucked you dry of your knowledge. Keep your expertise close to your chest. Let your needy colleagues sweat it out.
Can You See The Red Flags Of A Toxic Tech Company?
29:21
Thriving Technologist
Рет қаралды 125 М.
Canceling Developers for Mistakes? You’re Next!
20:55
Thriving Technologist
Рет қаралды 32 М.
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН
Арыстанның айқасы, Тәуіржанның шайқасы!
25:51
QosLike / ҚосЛайк / Косылайық
Рет қаралды 700 М.
A Guide To Managing Technical Teams
17:49
Continuous Delivery
Рет қаралды 118 М.
Your Project Is FAKE Agile, What Now?
23:03
Thriving Technologist
Рет қаралды 33 М.
What Makes A Great Software Engineer?  -  Alexis Agahi
20:15
ConFoo Developer Conference
Рет қаралды 9 М.
Microservices are Technical Debt
31:59
NeetCodeIO
Рет қаралды 699 М.
Why Tech Consultants Have Management's Ear (And You Don't)
31:22
Thriving Technologist
Рет қаралды 22 М.
First-Time Leader? 5 Tips on How to Lead a Team Effectively
14:16
Dr. Grace Lee
Рет қаралды 37 М.
How To Stop Getting Overwhelmed By Your Tech Job
24:46
Thriving Technologist
Рет қаралды 26 М.
Programming Is Cooked
9:30
ThePrimeTime
Рет қаралды 358 М.
Why Can't We Make Simple Software? - Peter van Hardenberg
41:34
Handmade Cities
Рет қаралды 169 М.
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН