---
tags: management, people
---
Dev Lead Overview
===
### Promote good culture
- Interteam communication
- Develop responsibility of getting tasks from dev to production
- Don't blame people for "bad code" or "wrong approaches"
- We can always do better
- "That's how we've always done it" is not good enough
### Delegate and share responsibility
- You won't get the work done your team members will
- Ensure engagement of developers in a task from planning to production
- Find people to help you take care of infrastructure that your team owns
- Jenkins
- AWS
- Build scripts
- Webpack
- Jenkinsfile
### Individuals
- Look for people who are bored
- Why are they bored?
- Ask them what they want to do about it?
- Make suggestions based on the individual developer's feedback
- Look for people who are struggling
- Is it due to tooling?
- Is it due to process?
- Is it due to interactions with others?
- Internal to team
- External to team
- Solicit feedback on how you are supporting them
- Don't assume you know what people are thinking
- Don't assume you know what people need
- Empathise
- People don't do bad things because they want to be bad
- Are they going through something in their personal lives?
- Is someone fit for their role?
- Has the way the team works evolved in a way that they no longer have the skills to share developer responsibilities?
### Track work and progress
- How many things is an individual developer responsible for?
- Are they taking on too much
- Are too many things **In Progress**
### Promote good practice and quality
- There should be enough time to provide good test coverage
- What is good test coverage?
- Write code for readability
- Be conscious of introducing complexity
- Modular code is more maintainable and/or easier to replace
- Look after your team
- Everyone's success and failure are your own
- Making mistakes is ok
- Get better awareness of things by doing good logging and monitoring in production
### Encourage involvement in strategic initiatives
- Think about how we will code, build, test and deploy in the future
- What could be improved with current code, build, test and deploy
- Manage versions of any libraries and frameworks we are dependant on
### Monitor
- Gain awareness of things:
- Technical debt
- Document it
- Plan to deal with it
- "Pay for it now or pay for it later"
- Do some testing in production
- Manual
- Automated
- Log things
- Just do it!
### Processes
- Monitor processes
- What works
- What is a pain point
- Change processes
- Don't be afraid to try something new to improve processes that are painpoints
- Look at dropping processes that are causing:
- Time wastage
- Developer frustration
### Technology
- Know all the technology that your team relies on
- Understand historical decisions around what technology your team are using
- What technology is holding back the team?
- What technology is enabling the team?
### Represent your team
- Don't hide how you team feels, tell someone:
- Your manager
- Leadership team
- People you deal with in other teams
- Monitor things that negatively effect your team
- Monitor things that positively effect your team
- Promote things that you've documented that are:
- Positive
- Negative