
Becoming the Best Research Engineer I Can Be
·
Timo Denk
This is about who I want to be professionally. I am (1) characterizing the target (a blend of coworkers like Matt, Christian, Lukas) and (2) identifying concrete actions to get there. My meta goal is to max out what I can achieve, such that my intelligence becomes the primary limiting factor, as opposed to a lack of direction, discipline, or the environment.
Interaction with Coworkers & Meetings
- Always be precise and concise in writing and speech
- Be available, humble, kind, and helpful
- Value coworkers’ time
- AI: Have an agenda for any meeting I initiate
- When sharing work, provide context; in meetings make breaks to allow for questions
- Give feedback on other people’s work
- AI: When reading an RFC leave at least one comment (even if it’s just an acknowledgement)
- Give generous credit – acknowledge even small contributions such as sharing a script.
- Don’t gloss over subtle disagreements or nod without truly understanding
- Do not be territorial, but stand your ground and demand credit when appropriate
- Approach other teams with openness and willingness to collaborate
- For each meeting, decide (binary): relevant or not. If relevant, give it 100% focus – no multitasking. If not, skip it entirely.
- AI: Just do it.
- Be engaged with the meeting content (ask questions, think along carefully)
- AI: Ask more questions in meetings and make suggestions whenever I have them.
Technical Acumen
- Stay on top of research (internal and external)
- AI: When docs/papers float around, spend 10 min skimming/reading with max focus, write a summary in a private knowledge doc
- AI: Maintain a running reading todo list
- AI: Make better use of reading groups and invited talks
- Understand adjacent and utilized technologies (“T-shaped knowledge with thick horizontal bars”)
- AI: Write a list of questions about models/technologies/frameworks I use and dedicate time answering them. For example, “What is this DAX in flume pipelines?” or “How many parameters does our tokenizer actually have?”
- Grow foundational understanding of underlying ML and CS algorithms. For example, I have trained Gemini with RL(HF) several times. I should be able to implement RLHF (PPO or GRPO) for LLMs in a notebook from scratch with JAX/PyTorch and understand the part where a non-differentiable reward is turned into backprop and weight update fully.
- AI: Identify such “underlying algorithms”, list them, and implement them outside of work in my tinkering repo
- Software components, tools, and algorithms must not be treated as black boxes; develop a healthy disregard for the complexity of other software :)
- AI: Peek more into adjacent code (or coworkers’ PRs) and demystify it
- Have high software engineering standards (cleanliness, style guidelines, unit testing, maintainability)
- AI: Self-review any PR before sending it out
- AI: Code occasionally in another language, e.g., use C++ flume instead of beam
- Optimize workflow (especially with the use of LLM-based tools)
- AI: Unless LLMs fail for about 20% of the queries I’m asking them because they are too difficult, I’m not maxing out their full potential. Dogfood internal code tools and be at the bleeding edge there.
Focus and Discipline
- 100% focus during work
- Work time is phone and social media-free. If I need a break, I can look out the window instead of scrolling feeds, which doesn’t relax my mind anyway.
- AI: Stay logged out social media on my work laptop
- AI: Phone stays in the laptop bag all workday (incl. lunch)
- Do not optimize for promotion, but let it happen organically as a consequence of having an impact
- Maintain a chronological work log for each project
What to Work On?
- Impact is the ultimate metric
- AI: Consult with experienced colleagues (such as my manager)
- Work on projects for which I feel a sense of ownership / personal motivation (e.g., the dialog model is something I want to build)
- Diversify topics to broaden skills and challenge the mind; don’t get too comfortable in one codebase or ML sub-domain
Work/life Balance
- Work motivation from excitement, curiosity, and desire to make an impact
- AI: Reflect every ~6 months on what I like about the projects I work on, what is exciting about them, what is challenging, what I dislike.
- Workload must be sustainable
- Prioritize girlfriend & family over work
- Read papers and work on side projects on weekends and holidays
- AI: Block out a 2h time slot each weekend for reading / catch-up / side projects.
Leadership
(I don’t have reports, but want to write down what I observed and what manager I’d like to be, if I did.)
- Leadership must emerge organically from merit, i.e., one just being the most suitable leader for a given project / group of engineers
- Trust and empower reports
- Reports must feel a ownership for what they work on
- Don’t dictate what they should do; discuss on equal footing, rely on their trust in you
- Anticipate organizational developments and wisely position the team so it has impact opportunities