https://thenewstack.io/tales-from-a-red-hat-quality-engineer...
- https://news.ycombinator.com/item?id=19924100 (understanding codebases, etc.)
- https://news.ycombinator.com/item?id=26591067 (testing pipelines, scaffolding, issue templates)
- https://news.ycombinator.com/item?id=22873103 (making the most out of meetings, leveraging your presence)
- https://news.ycombinator.com/item?id=22827841 (product development)
- https://news.ycombinator.com/item?id=20356222 (giving a damn)
- https://news.ycombinator.com/item?id=25008223 (If I disappear, what will happen)
- https://news.ycombinator.com/item?id=24972611 (about consulting and clients, but you can abstract that as "stakeholders", and understanding the problem your "client", who can be your manager, has.)
- https://news.ycombinator.com/item?id=24209518 (on taking notes. When you're told something, or receive a remark, make sure to make a note and learn from it whether it's a mistake, or a colleague showing you something useful, or a task you must accomplish.. don't be told things twice or worse. Be on the ball and reliable).
- https://news.ycombinator.com/item?id=24503365 (product, architecture, and impact on the team)
- https://news.ycombinator.com/item?id=22860716 (onboarding new hires to a codebase, what if it were you, improve code)
- https://news.ycombinator.com/item?id=22710623 (being efficient learning from video, hacks. Subsequent reply: https://news.ycombinator.com/item?id=22723586)
- https://news.ycombinator.com/item?id=21598632 (communication with the team, and subsequent reply: https://news.ycombinator.com/item?id=21614372)
- https://news.ycombinator.com/item?id=21427886 (template for taking minutes of meetings to dispatch to the team. Notes are in GitHub/GitLab so the team can access them, especially if they haven't attended).
- https://news.ycombinator.com/item?id=24177646 (communication, alignment)
- https://news.ycombinator.com/item?id=21808439 (useful things for the team and product that add leverage)
- https://news.ycombinator.com/item?id=20323660 (more meeting notes. Reply to a person who had trouble talking in corporate meetings)
- https://news.ycombinator.com/item?id=22715971 (management involvement as a spectrum)
- https://news.ycombinator.com/item?id=25922120 (researching topics)
- https://news.ycombinator.com/item?id=26147502 (keeping up with a firehose of information)
- https://news.ycombinator.com/item?id=26123017 (fractal communication: communication that can penetrate several layers of management and be relevant to people with different profiles and skillsets)
- https://news.ycombinator.com/item?id=26179539 (remote work, use existing tooling and build our own. Jitsi videos, record everything, give access to everyone so they can reference them and go back to them, meetings once a week or two weeks to align)
Write better. Always.
Be in tune with how they're feeling. Ask them how they are. Observe carefully if there's something on their mind. Don't let an infection linger and if it does, drain the pus and treat it as soon as possible. Be on the ball every day to keep your team members: speak freely with them about finances. You want to have conversations with them before they start looking for another job and you want to establish a trusting relation so they can freely speak with you about what they're frustrated about.
Reduce information asymmetry to the best of your abilities. If you're in a meeting and they were not present, take notes and disseminate. Keep them informed. They'll have some of the most valuable input you'll have and they'll bring things you didn't see to your attention (code level, system level, incompatibilites, integrations, ideas). Get involved with the business side and involve them as well. You want to feed off each other: they'll make you a better manager than you could have on your own. Push them to be better. They'll push you to be better.
Never hesitate to state you fucked up. Establish that soon. They won't have a problem to do it after that. Always get to the truth. It will speed up everything, from a simple incident on a production machine, to correcting course on a project in a split second. It will save you all. Transparency.
Never be vague or cryptic or create an information void; it will be filled by the worst interpretation possible. Never say "Can we have a meeting at 1400?" (this causes stress). Always say "I'm having trouble understanding this part of this sub-system and I need you help to understand it better. What time works for you to have a chat about it?". The first may lead someone to think [insert the worst reason for a meeting they can think of]. Never do that; even when it's bad. Then again, I'm biased as I was trained in feedback and control systems/theory, so I see things in terms of desired state and current state and errors to be corrected. It makes conversations easier (our system produces some output and I'd like it to produce a different output, how can we improve that system to reduce that error). Put it that way to an engineer and you'll be amazed at how fast you could optimize while minimizing disagreable feelings: put brains to work, not thyroid glands.
If you're in an office environment or you make stints at the office, a great way to have "one-on-one"s is to get out of the office and take a walk with your team member. Just walk around town or something. You'll have conversations you would never have had if you were in the office. Just completely different conversations. Get to the truth every single time.
Always keep your promises and never promise what you cannot deliver. Always do right by your team members.
Always push to get your team members more of everything; there are many who will shy away from asking so make sure to be their voice. Never miss an occasion to give credit with "higher ups" and acknowledge the work of your team. As I said, be a shield: if there's a screw up, say you'll fix it. Don't get into details on "who" messed up: your team messed up therefore you messed up therefore you say you will fix it. If it gets down to chewing someone on your team, don't let anyone chew one of your team members. It's between you and your team member.
Be very protective of your team cohesion: get involved in hiring and get your team involved in hiring and filter like a motherfucker. Weed out anyone who is not fit to join your team. Always ask your team members to validate candidates. If you don't have a say in it and your team complains about someone, handle it as soon as possible: get very close to the person and train them to work well with your team, then ask for feedback from your team on the evolution of the new hire. Rinse, repeat. If they find it unbearable to work with the new hire and you couldn't train them to work well with the team, do whatever you can to get them out of the team. If not, it will destroy your team.
If someone leaving the team is unavoidable, hook them up elsewhere and look after them when they leave. Ask to be listed as a reference and praise them with future employers. I suppose you work with people who are damn good because if they're not, you would have trained them to be or pushed them out in the first place.
I keep in touch with people who have left (for reasons we could do nothing about) and send them things to improve their life (better job offers, information about new things they might be interested in).
Institutionalize everything. Make sure you're replaceable. Make sure your team members can do your job, then do something else (reinvent your job). Make sure they always see a bigger picture (if you're involved in sales an learn things, teach them to them. If you're writing copy, do that as well. Be sharing. Be useful.)