# Ayoub Abidi > Ayoub Abidi — Software Developer. Personal portfolio of Ayoub Abidi, software developer — projects, experience, and writing on engineering and design. Open to opportunities: yes ## Contact - GitHub: https://github.com/ayoub3bidi - LinkedIn: https://www.linkedin.com/in/ayoubabidi - X: https://x.com/ayoub3bidi - Email: mailto:contact@ayoub3bidi.me The rest of this site is also available as Markdown: - [Home](https://ayoub3bidi.me/index.md): overview and navigation - [About](https://ayoub3bidi.me/about.md): background, values, tech stack - [Projects](https://ayoub3bidi.me/projects.md): full portfolio with stack and impact - [Experience](https://ayoub3bidi.me/experience.md): work history - [Collaboration](https://ayoub3bidi.me/collaboration.md): ways of working together - [Writing](https://ayoub3bidi.me/posts.md): index of all blog posts This file follows the llms.txt convention (https://llmstxt.org). ## Projects (47) - [Sun](https://github.com/ayoub3bidi/sun): The command-line interface of the Solar Stack. A lightweight Go CLI that scaffolds production-ready repositories from reusable templates using the Solar Commons engine. (Open-source) - [Solar Commons](https://github.com/ayoub3bidi/solar-commons): Core Go library for the sun CLI. A reusable Go scaffolding engine powering the Solar Stack. (Open-source) - [DeepFlows.ai](https://deepflows.ai/): An investment networking platform that helps VC funds discover and connect with LP investors through warm introductions. (Full-stack developer) - [EDIM](https://edim.com.tn/): The official website of EDIM real estate company in Tunisia. (Full-stack developer) - [boschglobal/dse.sdp](https://github.com/boschglobal/dse.sdp/pull/43): Simulation Development Platform of the Dynamic Simulation Environment Core Platform. (Contributor) - [telekom/sparrow](https://github.com/telekom/sparrow/pull/391): A monitoring tool to gather infrastructure network information (Open-source) - [zalando/go-keyring](https://github.com/zalando/go-keyring/pull/135): Cross-platform keyring interface for Go (Open-source) - [criteo/node-disruption-controller](https://github.com/criteo/node-disruption-controller/pull/76): A way to control node disruptions in a K8s cluster. (Open-source) - [airbusgeo/godal](https://github.com/airbusgeo/godal/pull/148): golang wrapper for github.com/OSGEO/gdal (Open-source) - [ovh/cds](https://github.com/ovh/cds/pull/7535): Enterprise-Grade Continuous Delivery & DevOps Automation Open Source Platform. (Open-source) - [Think-iT-Labs/dirhash](https://github.com/Think-iT-Labs/dirhash/pull/13): Compute a deterministic checksum of a directory by hashing file contents and their relative paths. (Open-source) - [Bayan Flow](https://bayanflow.com/): A web app that visualizes algorithms in animated step by step. (Author & maintainer) - [Swiss Knife](https://pypi.org/project/swiss-knife-py): A collection of open-source scripts and tools for automating tasks and enhancing productivity. (Open-source) - [Comwork Cloud MCP](https://gitlab.comwork.io/oss/cwcloud/cwcloud-mcp): A Context Protocol server enabling AI assistants to integrate with Comwork Cloud services (Comwork.io) - [Venus](https://venus-docs.netlify.app/): A modern documentation website boilerplate powered by Docusaurus and Tailwind CSS. (Open-source) - [Talaba TN](https://talabatn.net/): A Tunisian e-learning platform, dedicated to high school and university students. (Full-stack developer) - [imalive](https://github.com/idrissneumann/imalive): A simple, fast and reliable uptime monitoring service. (Open-source) - [Mars](https://github.com/ayoub3bidi/mars): FastAPI + PostgreSQL boilerplate with Auth, Docker, and Alembic Migrations built-in. (Open-source) - [Mercury](https://github.com/ayoub3bidi/mercury): FastAPI + PostgreSQL boilerplate with Auth, Docker, and Flyway DB Migrations built-in. (Open-source) - [Object Detection System](https://ayoub-object-detection.netlify.app/): A real-time object detection system. (Academic) - [Festival Management System](https://github.com/ayoub3bidi/gestion_festival): A festival management system. (Academic) - Golf App: Golf Tee Times management mobile app for dAInamic. (Comwork.io) - Fairmat App: Bar code scanning web app for Fairmat factory. (Comwork.io) - [ZAN-f](https://www.zan-f.com/): The official ZAN-f wood products website. (Comwork.io) - Document Control Connector: A microservice for Docapost. (Comwork.io) - [Comwork.io](https://comwork.io/): The official Comwork.io website. (Comwork.io) - [Comwork Cloud CLI](https://gitlab.comwork.io/oss/cwcloud/cwc): A CLI to use Comwork Cloud API. (Comwork.io) - [Comwork Cloud](https://www.cwcloud.tech/): A complete, fully functional, local developers or sysadmin environment on the cloud, has been designed to reduce the setup time as well as your hosting costs. (Full-stack engineer) - [Book Notes](https://github.com/Tunisian-GitHub-Community/Book-notes): Notes from programming books. [Open-source] (Open-source) - [Notes](https://github.com/ayoub3bidi/ma5zen): A markdown-supported note-taking web app. (Open-source) - [Ma5zen](https://github.com/ayoub3bidi/ma5zen): A full-stack inventory web app. (Open-source) - [Mouzika](https://mouzika.netlify.app/): A Spotify clone. (Academic) - [Sector R](https://sector-r.netlify.app/): A real-time chatroom. (Open-source) - [Reddit Clone](https://github.com/ayoub3bidi/reddit-clone): A full-stack reddit clone. (Open-source) - [Flousi](https://flousi.netlify.app/): A simple expense tracker web app. (Open-source) - [Ommek Sannefa](https://github.com/ayoub3bidi/ommek-sannefa): Kitchen recipes sharing platform. (Open-source) - Podium ESG (End-of-studies internship project) : Financial portfolios publication web app. (Academic) - [Koujina API](https://github.com/Tunisian-GitHub-Community/Koujina_api): An API for kitchen recipes. (Open-source) - [Sou9 API](https://github.com/ayoub3bidi/sou9_api): An API for e-commerce. (Open-source) - [Covid Tracker](https://online-covid-19-tracker.netlify.app/): Covid-19 cases and deaths tracker. (Open-source) - Time Check: Projects management mini-platform. (Freelance) - [My List (Summer internship project)](https://mylist-f82d6.firebaseapp.com/): A simple platform to share your passion by creating lists and sharing them with other users. (Academic) - [GFA Phones](https://github.com/ayoub3bidi/GFA-phones): A simple e-commerce platform for phones and accessories. (Academic) - [My Heroes](https://ayoub3bidi.github.io/myheroes/): A minimalist website that can display mini-biographies about 20 programmers who made the internet as we know it today. (Open-source) - [Quotes](https://ayoub3bidi.github.io/Quotes): A website that can display random inspirational quotes from a public Api. (Open-source) - [My Favorite LOL Champion](https://ayoub3bidi.github.io/myFavoriteLolChampion/): A minimalist website for my favorite League of Legends champion Ekko. (Open-source) - [Dokkōdō](https://ayoub3bidi.github.io/Dokkodo): A minimalist website that can display Musashi's 21 principles for those who walk alone in this life. (Open-source) ## Experience ### Full-Stack Developer — Byrsa Labs (November 2025 - Present, Remote) Company: https://www.byrsalabs.com ### Full-stack Developer (Freelance) — Talaba TN (December 2023 - March 2026, Remote) Company: https://talabatn.net ### Full-stack Developer — Comwork.io (January 2023 - September 2025, Remote) Company: https://comwork.io ### End-of-studies intern — Podyam (January 2022 - May 2022, Remote) Company: https://www.podyam.com ### Frontend Developer (Freelance) — TuniAOS (September 2021 - November 2021, Remote) Company: http://www.tuniaos.com ### Summer Intern — Tunisie Telecom (June 2021 - July 2021, Remote) Company: https://www.tunisietelecom.tn ## Writing (50 posts) - [Bayan Flow 0.4.0: From Algorithm Visualization to Real Understanding](https://ayoub3bidi.me/posts/bayan-flow-4/) — 2026-04-19 - [Bayan Flow 0.3.0: From 6 to +20 Algorithms](https://ayoub3bidi.me/posts/bayan-flow-3/) — 2026-03-29 - [Bayan Flow 0.2.0: finishing the foundations (i18n, RTL, tests, and small UX wins)](https://ayoub3bidi.me/posts/bayan-flow-2/) — 2025-12-20 - [I Built an App That Makes Learning Algorithms Way Easier](https://ayoub3bidi.me/posts/bayan-flow/) — 2025-11-11 - [Technical Debt: When to Pay It Off and When to Live With It](https://ayoub3bidi.me/posts/technical-debt/) — 2025-06-01 - [Quick Tutorial: Implementing Google OAuth2 in FastAPI (Callback Method)](https://ayoub3bidi.me/posts/fastapi-google-auth-callback/) — 2025-05-01 - [Quick Tutorial: Adding Google Auth to FastAPI (Token Method)](https://ayoub3bidi.me/posts/fastapi-google-auth-token/) — 2025-05-01 - [The Impact of Open Source Contributions on a Developer’s Career](https://ayoub3bidi.me/posts/open-source/) — 2025-04-15 - [Code Conversations Podcast Episode 05: The Role of the Software Architect in Agile, Balancing Design and Flexibility](https://ayoub3bidi.me/posts/code-conversations-ep05/) — 2025-03-01 - [Code Conversations Podcast Episode 04: The Null Object Pattern, Simplifying Code with Design Patterns](https://ayoub3bidi.me/posts/code-conversations-ep04/) — 2025-02-01 - [Code Conversations Podcast Episode 03: Evolution in Open Source Software, Insights from a Case Study](https://ayoub3bidi.me/posts/code-conversations-ep03/) — 2025-01-01 - [Code Conversations Podcast Episode 02: Reflections on Trusting Trust, The Hidden Threats in Software Security](https://ayoub3bidi.me/posts/code-conversations-ep02/) — 2024-12-01 - [Code Conversations Podcast Episode 01: No Silver Bullet, A Deep Dive into Software Engineering Challenges](https://ayoub3bidi.me/posts/code-conversations-ep01/) — 2024-11-01 - [Demystifying Software Engineering Experience: What Counts on Your Resume?](https://ayoub3bidi.me/posts/experience/) — 2024-06-01 - [Clean Architecture: A Craftsman's Guide to Software Structure and Design](https://ayoub3bidi.me/posts/clean-architecture/) — 2024-04-21 - [Quick tutorial: How to add a release GitHub workflow](https://ayoub3bidi.me/posts/github-workflow/) — 2024-03-01 - [Code Review Culture: Orchestrating Excellence in Software](https://ayoub3bidi.me/posts/code-review/) — 2024-02-01 - [The non-designer's design book](https://ayoub3bidi.me/posts/the-non-designers-design-book/) — 2023-10-14 - [The Rise of Low-Code and No-Code Platforms: Implications for Software Developers](https://ayoub3bidi.me/posts/low-code/) — 2023-10-01 - [The Role of Communication in Software Development](https://ayoub3bidi.me/posts/communication/) — 2023-09-01 - [The Importance of Balancing Humility and Confidence in Software Development: Exploring the Role of Egoism](https://ayoub3bidi.me/posts/egoism/) — 2023-08-01 - [The Three.js Supremacy](https://ayoub3bidi.me/posts/three/) — 2023-07-02 - [AI on the job market, a boost or a future plan for replacement?](https://ayoub3bidi.me/posts/ai-job-market/) — 2023-06-01 - [The beauty of using Python for your back-end](https://ayoub3bidi.me/posts/python/) — 2023-05-01 - [Balancing code quality with speed of delivery for junior developers](https://ayoub3bidi.me/posts/code-quality/) — 2023-04-01 - [GitHub's Tunisian Community Podcast Episode 04: Single Threaded (JavaScript) with Burawi Ben Ammar](https://ayoub3bidi.me/posts/gtcp-ep04/) — 2023-03-14 - [Let’s settle things out [2]: NPM Vs. YARN Vs. PNPM](https://ayoub3bidi.me/posts/npmvsyarnvspnpm/) — 2023-02-04 - [How to deal with imposter syndrome as a developer](https://ayoub3bidi.me/posts/imposter/) — 2023-01-04 - [GitHub's Tunisian Community Podcast Episode 03: Transitioning to technology with Abderraouf Ghrissi](https://ayoub3bidi.me/posts/gtcp-ep03/) — 2022-12-20 - [Let's talk about being a "jack of all trades, master of none"​ in software development](https://ayoub3bidi.me/posts/jack-of-all-trades-master-of-none/) — 2022-11-26 - [How gamification helped the software industry to thrive](https://ayoub3bidi.me/posts/gamification/) — 2022-10-26 - [Should you (still) use/learn GraphQL?](https://ayoub3bidi.me/posts/graphql/) — 2022-09-26 - [Let's talk about the Dunning Kruger effect](https://ayoub3bidi.me/posts/dunning-kruger-effect/) — 2022-08-23 - [TypeScript (or Oh god why I didn't learn it sooner ?)](https://ayoub3bidi.me/posts/typescript/) — 2022-08-19 - [Head first design patterns](https://ayoub3bidi.me/posts/head-first-design-patterns/) — 2022-06-30 - [Let's talk about Burnout](https://ayoub3bidi.me/posts/burnout/) — 2022-06-21 - [Time to escape tutorial Hell](https://ayoub3bidi.me/posts/tutorial-hell/) — 2022-06-14 - [How blogging will make you a better developer](https://ayoub3bidi.me/posts/blogging/) — 2022-06-07 - [Why we should go back to problem-solving](https://ayoub3bidi.me/posts/problem-solving/) — 2022-05-30 - [I've learned React (after being in love with Vue)](https://ayoub3bidi.me/posts/react/) — 2022-05-13 - [Let's settle things out: NPM vs Yarn](https://ayoub3bidi.me/posts/npmvsyarn/) — 2022-04-12 - [GitHub's Tunisian Community Podcast Episode 02: DevOps with Mohamed Dhia Hadden](https://ayoub3bidi.me/posts/gtcp-ep02/) — 2022-03-23 - [Docker in a Nutshell: A Powerful Platform for Containers](https://ayoub3bidi.me/posts/docker/) — 2022-03-05 - [My experience with Flutter (as a beginner)](https://ayoub3bidi.me/posts/flutter/) — 2021-12-16 - [I tried Nuxt.js and why you should too!](https://ayoub3bidi.me/posts/nuxt/) — 2021-09-29 - [Databases you should know as a developer](https://ayoub3bidi.me/posts/databases/) — 2021-09-14 - [Bootstrap: still the best?](https://ayoub3bidi.me/posts/bootstrap/) — 2021-09-07 - [GitHub's Tunisian Community Podcast Episode 01: Data science with Elyes Manai](https://ayoub3bidi.me/posts/gtcp-ep01/) — 2021-08-01 - [Vite.js or How I Become the fastest programmer alive](https://ayoub3bidi.me/posts/vite/) — 2021-07-17 - [Why you should try Vue.js ? (as a beginner)](https://ayoub3bidi.me/posts/vue/) — 2021-07-09