# Ahmed El Gabri > Ahmed El Gabri is a Software engineer with 15+ years of experience across Product, Platform, and Developer Experience. I focus on clarity, maintainability, and helping teams and individuals grow steadily over time. ## About Software engineer with 15+ years of experience across Product, Platform, and Developer Experience. I focus on clarity, maintainability, and helping teams and individuals grow steadily over time. Principal Engineer at [Miro](https://miro.com), Amsterdam. ## Contact - GitHub: [ahmedelgabri](https://github.com/ahmedelgabri) - LinkedIn: [ahmedelgabri](https://www.linkedin.com/in/ahmedelgabri/) - twitter: [@ahmedelgabri](http://twitter.com/ahmedelgabri) - Email: [ahmed@gabri.me](mailto:ahmed+contact@gabri.me?subject=Hi!&body=👋🏼) ## Talks & Interviews - 2024-03-03: [Staff Engineering path (Arabic)](https://www.youtube.com/live/jOW1bj9_HFA?feature=shared) - 2021-01-23: [Null++ Podcast (Arabic)](https://podcasts.apple.com/eg/podcast/episode-45-technical-leadership-with-ahmed-el-gabri/id1493463874?i=1000506332698) - 2018-12-17: [DevToManager Interview](https://web.archive.org/web/20250316193655/https://devtomanager.com/interviews/ahmed-el-gabri/) - 2017-06-08: [Automating front-end refactoring](https://www.youtube.com/watch?v=xGjSMbks9vA) ([slides](https://amsterdamjs-codemods.surge.sh)) ## Blog - 2026-02-04: [Introducing git-wt: Worktrees Simplified](https://gabri.me/blog/git-wt) - 2026-02-02: [Git Worktrees Done Right](https://gabri.me/blog/git-worktrees-done-right) - 2018-03-28: [RTL on the web, web related tools & maybe more...](https://gabri.me/blog/rtl-on-the-web-and-more) - 2017-08-27: [Death by thousand config files](https://gabri.me/blog/death-by-thousand-config-files) - 2017-03-12: [Multiple files search and replace in vim](https://gabri.me/blog/multiple-files-search-and-replace-in-vim) - 2017-01-29: [Analyzing & optimizing your webpack bundle](https://gabri.me/blog/analyzing-optimizing-your-webpack-bundle) - 2015-11-08: [Migrating from Evernote](https://gabri.me/blog/evernote-to-jrnl) - 2015-10-05: [DIY Vim statusline](https://gabri.me/blog/diy-vim-statusline) - 2014-07-26: [Making the default gulp task useful](https://gabri.me/blog/making-the-default-gulp-task-useful) - 2013-09-27: [No more hosts file with dnsmasq](https://gabri.me/blog/no-more-hosts-file-with-dnsmasq) - 2013-08-06: [Global scope, namespacing & CSS](https://gabri.me/blog/global-scope-namespacing-css) - 2013-05-25: [Sass mixin for auto-numbering with CSS](https://gabri.me/blog/sass-mixin-for-auto-numbering-with-css) - 2013-04-19: [Quick tip: VirtualBox & localhost](https://gabri.me/blog/quick-tip-virtualbox-localhost) - 2013-01-24: [Custom colors in your ZSH prompt](https://gabri.me/blog/custom-colors-in-your-zsh-prompt)