Michael 'dnsmichi' Friedrich README (Principal Developer Advocate)
This page is intended to help you understand how I work, how to reach me, and where I can help most. I’m intentionally vulnerable and open to feedback.
Please feel free to contribute to this page by opening a merge request.
Transparency note: This README was collaboratively edited with GitLab Duo Agentic Chat to improve readability and structure while maintaining my authentic voice.
TL;DR – How to work with me
- I work async-first. Default to issues/epics/handbook docs with clear context over ad‑hoc meetings.
- I prefer low-context written communication so others can continue when I’m offline.
- My focus: GitLab Duo / Agent Platform, Agentic AI, DevSecOps efficiency, and Embedded DevSecOps. Loop me in where AI meets real constraints (legacy code, slow pipelines, edge/embedded, sovereignty).
- I protect focus time and energy (focus blocks, travel + rest). I will say no, de-scope, or redirect to keep impact sustainable.
- I value direct, kind feedback and will be direct in return. Please tell me if my passion or directness lands wrong.
- I can’t answer everything or every DM. If it’s important, open an issue and @‑mention me.
About me
I grew up in Linz, Austria, fascinated by how computers work. That curiosity led me to Hardware/Software Systems Engineering, network and DNS work at the University of Vienna, and 11 years maintaining an open-source monitoring project. Along the way I learned how software runs in production, what CVEs really mean, and how important healthy communities and honest feedback are.
My passion for open source brought me to Nuremberg, Germany in 2012, where I still live in the countryside. In March 2020, I joined GitLab and started my all‑remote adventure.
Today I’m a Principal Developer Advocate at GitLab, specializing in:
- Production-ready Agentic AI use cases with GitLab Duo & Duo Agent Platform.
- DevSecOps efficiency across CI/CD, security, and developer workflows.
- Embedded DevSecOps & edge research – Raspberry Pi, NVIDIA Jetson, Arduino, and hardware‑in‑the‑loop CI.
I turn real customer constraints (legacy code, slow pipelines, strict environments, edge devices) into talks, demos, content, and product feedback, and contribute to product and GTM strategy.
Outside of work I enjoy building LEGO models, home automation with embedded hardware, exploring nature, and travelling. More about me: https://dnsmichi.com/about/
Biography and headshots
A detailed biography in multiple lengths and languages, plus professional headshots, is available in this public document. This is what event organizers usually need.
My work values
I follow GitLab’s values and especially:
- Assume positive intent. I believe everyone tries to do the right thing. This keeps discussions calm and productive.
- Transparency & SAFE. I work in public by default, document decisions, and share context, while respecting SAFE boundaries.
- Managers of one. I don’t wait for permission to propose an idea, MR, or action. If you need something prioritized, ask me directly and tag me in an issue.
- Say why, not just what. Understanding the why and context behind decisions helps me validate approaches and make better proposals. I try to explain reasoning so others can challenge, improve, and contribute.
- Handbook first. I treat the handbook as our single source of truth and fix missing information with issues/MRs.
- Everyone can contribute. I break down complex topics (Technical problems/blockers/barriers, product features, handbook updates, etc.) for everyone. I love honest, actionable feedback – especially 1:1 to help me grow.
- Family and friends first, work second. While I am passionate about my work, I enjoy the freedom of flexible work hours and PTO, and working remotely, allowing me to put family and friends first.
How I manage energy and focus
- I use focus blocks and “no meeting unless you ask” times. Please check before scheduling over them.
- I pair heavy travel/event periods with rest before and after; around those times my response speed may change.
- I literally keep the Eisenhower Matrix on my desk and use it to choose where to invest time.
- If you see me over‑committing, perfectionistic, or spread too thin, I appreciate a direct nudge.
Working with me
Communication
- Async-first. I prefer discussion in GitLab issues/epics, GDoc and Slack over synchronous calls.
- Use low-context communication, providing all necessary context so that everyone can continue when I’m offline or focused on other tasks.
- Be respectful of each others time, and avoid
@here/@channelmentions in Slack.
- Public over private.
- Ask in public Slack channels or issues so others can contribute.
- Use DMs for private/confidential topics; I may then ask to move the conversation to a public channel/issue.
- Response expectations.
- I’m not great at email triage and I get many DMs across platforms.
- If you don’t get a reply in DM, open or update an issue and @‑mention me – that’s where I prioritize attention.
- For external follow‑ups, a reminder or a tracking issue helps a lot.
Meetings & calendar
-
Time zones.
- I’m in CET and mostly cover AMER + EMEA overlap.
- Preferred meeting window: 1:30 PM–6:30 PM CET (4:30 AM–9:30 AM PT).
- Mornings are reserved for focused work or personal errands.
-
Agendas required.
- No agenda, no attenda: if there’s no agenda, I might not accept the invite.
-
Flexible invites.
- My calendar invites are editable for GitLab team members; feel free to move to a better time.
- Short‑notice reschedules are fine. I’ll always find something else meaningful to work on.
-
Recurring syncs.
- If a recurring coffee chat or topic‑specific 1:1 would help, propose it with an agenda doc for ongoing notes.
Cross-functional collaboration
Great topics for my involvement:
- GitLab Duo / Duo Agent Platform / Agentic AI
- Use case design, prompts, flows, guardrails, developer experience.
- “What’s realistic?” questions vs hype, especially in complex environments.
- Modernization & legacy code
- Using GitLab Duo with C/C++, Java/Spring, COBOL, and other languages to refactor or migrate.
- Embedded / Edge / Hardware-in-the-loop
- GitLab Runners and CI on Raspberry Pi, NVIDIA Jetson, Arduino, etc.
- Combining CI/CD, observability, and physical hardware.
- Talks, workshops, and demos
- Storylines, live demo design (including “things might break” scenarios), and 5‑minute success moments.
- DevRel & event strategy
- Narrative, target personas, AI and embedded angles, and connecting dots between product/field/community.
If you’re unsure, ask – I may redirect you to a better DRI or suggest how to capture the need in an issue.
Examples of my cross-functional engagements are competitive research, AI SME (#sme-ai in Slack), launch support for GitLab Duo Agent Platform, FY27 event strategy for DevRel, etc.
Feedback & DIB
- I appreciate direct, specific feedback, ideally in private first, with examples.
- I can be very enthusiastic and direct. If something feels too pushy or overbearing, please tell me – I want to improve.
- I care deeply about diversity, inclusion and belonging. I’m active in the Global Voices TMRG and Women TMRG Mentorship program.
How to reach me
I go by dnsmichi almost everywhere:
- Slack: GitLab Slack profile
- GitLab.com: https://gitlab.com/dnsmichi
- GitLab Forum: https://forum.gitlab.com/u/dnsmichi/summary
- Social & website: https://dnsmichi.com/about/ and https://dnsmichi.com
For email and calendar, search for Michael Friedrich or mfriedrich.
I’m happy to connect on LinkedIn and amplify your work (hiring, product/engineering insights, marketing, etc.). For social media guidance see Developer Advocacy on Social Media.
My private contact details are visible internally; please don’t share them externally. If a form needs a phone number, use the company phone number. For urgent incidents where Slack fails, you can text my private mobile.
Strengths & growth areas
Strengths
- Fast learner & adaptable. I enjoy diving into new domains (AI, Embedded, eBPF) and connecting them back to DevSecOps workflows, customer needs and GTM strategy.
- Systems thinking & connectors role. I’m good at connecting customers, field, product, UX, and engineering into coherent narratives and proposals.
- Learning in public. I turn experiments and questions into blogs, talks, workshops, demos, and docs that others can reuse.
- Team player. I prioritize unblocking others (reviews, debugging, Duo adoption) and sharing praise.
Growth areas
- Over-commitment. I still say “yes” too often. I use the Eisenhower Matrix and will sometimes say no, de‑scope, or redirect.
- Directness & passion. My enthusiasm can feel strong. I’m working on framing suggestions as invitations, not directives.
- Email/DM overload. I won’t get to every DM or email. Issues with clear context are the best way to reach me.
- Perfectionism. I’m still training myself to prefer minimal valuable changes and iteration over “capture everything” documents.
How I learn best
I thrive in areas where I am not an expert, and someone has asked for help, providing a real problem to solve. For example, customers asking about COBOL code modernization inspired me to leverage GitLab Duo Agent Platform to learn COBOL and identify migration strategies.
I also love live demos where unexpected things can happen, requiring me to leverage my experience to debug and move forward - just like developers do on a daily basis. This creates authenticity and trust, and I learn a lot about the problems that users might face. It inspires many content ideas, too.
My knowledge about GitLab features continuously sources from helping users on the GitLab Community Forum and field team members in Slack as AI SME. I also help maintain the GitLab handbook backend, adding a production environment that needs to run stable.
Content & resources
If you want to see how I think and work, these are good starting points:
-
Talks: https://dnsmichi.com/talks/
- You can find my maintained talks in Developer Advocacy content library.
-
Portfolio: https://dnsmichi.com/portfolio/
-
GitLab blog posts: https://about.gitlab.com/blog/authors/dnsmichi/
-
Personal blog (yearly reflections & experiments): https://dnsmichi.com
My all‑remote reflections:
- Blog: One year worth for ten: My 6th year at GitLab
- Blog: My 5th Year at GitLab: Developer Advocate Journey, AI Adventures, and Finding Balance
- Blog: Michi, Limited Edition - 4 years all-remote at GitLab
- Blog: Three years all-remote at GitLab: Know the unknown unknowns (growth, life, and work)
- Blog: 2 years all-remote and my 2022 vision
- Blog: My 1st year all-remote at GitLab
Thanks for reading
Thanks for taking the time to read this README. If you’d like to know more, or spot the easter eggs in my background, take a look at my all-remote workspace and feel free to schedule a coffee chat.
c98f476c)
