Hello! I'm Ali - since 2015 now, I have the pleasure of working with companies, helping them to create exciting and engaging digital products for their customers.
For me, coding is like building with LEGO: modular, creative, and extremely satisfying - except with less stepping on bricks and more stepping through stack traces.
I love solving problems by searching for the optimal solution, not just the first one that comes to mind. Because let's be honest: the only way to go fast is to go well. I’m always searching for that one solution that balances elegance with efficiency, always respecting both the codebase and the budget.
What excites me most is that beautiful phase where ideas turn into architecture. Greenfield or Brownfield, it doesn’t matter—give me a Figma wireframe or a feature spec scribbled on a napkin, and I’m all in. Planning, scoping, and decision-making energize me just as much as the actual coding.
I started like many, building my first website with HTML and CSS, then moved on to WordPress and PHP. Eventually, I slid down the JavaScript rabbit hole and… never came back. Today, my home turf is Node, TypeScript, and Vue. It’s where I breathe, build, and keep my tools sharp—especially with Nuxt, which keeps making me happy with all the power it puts into the developer's hands right out of the box.
Here’s a snapshot of the technologies, tools and approaches I bring to every project - hand-picked to build performant, maintainable and accessible Vue-powered experiences.
Soft Skills: I am a creative, organized, open minded, objective, autonomous, helpful & reliable team player
This toolkit reflects my skills even if there are many smaller libraries and stuff like Charts.js, day.js, Postman, several IDEs and stuff that is so basic that I don’t mention it within the following list.
Since starting my career as a freelancer, I've lived and breathed Vue - working nearby daily with Vue 2 & 3 (Class Style, Options, and Composition APIs) and Nuxt 2 & 3 for full-stack projects.
I deeply appreciate everything the Vue ecosystem has brought to the table. For my very own website, I chose Nuxt 4 (for future-proofing) in SSR mode, Pinia for state management, Vitest for unit testing, and Histoire with Lost Pixel for documentation and visual regression testing. (While I typically prefer Storybook + Chromatic, Histoire's out-of-the-box functionality and Lost Pixel's open-source/free model made them worth exploring - both are young tools with promising development potential.)
For styling, I used Tailwind 4. While I still love developing smart Sass functions and mixins for efficient styling, I acknowledge Tailwind's faster implementation. For content management, Storyblok proved excellent - though many solutions offer comparable quality with different pros/cons - and its application/content separation perfectly complements my tech stack. I also implemented a Redis caching layer: a fast in-memory solution with a sufficient free tier and helpful tools like Redis Insights.
I use GitHub for version control, ESLint with custom rules to maintain code quality standards, and Husky for Git hooks to ensure repository integrity.
What I really like about Vue is its true component-centric separation of concerns. Unlike Angular’s “horizontal” approach — splitting HTML, JavaScript and CSS into separate files — or React’s tendency to blur markup, logic and styles together, Vue’s Single-File Components bundle each component’s template, logic and styles in one place. This “vertical” separation keeps everything related to a UI unit encapsulated, modular and easy to maintain — without hunting through multiple folders or wrestling with global namespace collisions.
And then there is Nuxt, which takes Vue even to the next level: out of the box one gets server-side rendering (SSR), static site generation (SSG), powerful routing, based on vue router, which can be file-based or completely dynamic, automatic code splitting and optimized builds. In short, Nuxt not only accelerates development but also enforces best practices by integrating the full web stack into one coherent, Vue-powered meta-framework.
Also I love Vue's rich ecosystem providing really cool solutions for every problem - Pinia , VueUse , Vitepress , VueDevtools , Histoire , Nuxt , and many more are simply working out of the box using them in Vue. Also the Vue community is providing many framework agnostic solutions like Vite , Vitest and Oxc - reshaping how developers of every framework build, test and optimize their applications. I’m constantly impressed by the elegance and performance of these tools (even if nothing in this world is perfect of course), and I believe in supporting the people behind them, because their innovations lift the entire front-end world.
My heart beats for frontend, but I’m no stranger to the backend. I’ve shipped full-stack features and tinkered with other languages like Python, Kotlin, and Go, each offering new perspectives. While I admire Go's simplicity and Kotlin's smooth tooling, I always return to JavaScript. For me, its ecosystem is like a the one local bar where everybody in town is going to: not flawless, but it's where the community is, it feels like home, and it’s where the fun happens. It just fits.
Whether it’s a component refactor, an accessibility audit, or a sprint planning session, I bring a mindset of clarity, curiosity, and collaboration. I want things to work, work well, and work for everyone—users, teammates, and future developers alike.
My Expertise
As a Web Developer I use several technologies, tools and approaches - my focus is always on creating accessible, performant, and visually engaging experiences.
Front-End
Specialized in modern JavaScript frameworks: JavaScript, TypeScript, HTML, CSS, Vue, Nuxt, React, jQuery, Vue-Router, Vuex, Pinia, Tailwind CSS, Sass/Scss, Pug.
Backend & CMS
Full-stack capabilities including Node, PHP, Firebase, and deployment platforms like Vercel, Heroku, Netlify. CMS experience with WordPress, FirstSpirit (FSXA-API), Storyblok.
Tooling
A compact, pragmatic set of Vite/Webpack, npm/pnpm/yarn, Gulp, Git (GitHub, GitLab, Bitbucket, ...) and Storybook/Histoire for stable, testable frontends.
Quality Assurance
Comprehensive testing approach using Unit Testing (Vitest, Jest), visual regression testing with Lost-Pixel, Chromatic and Percy, and accessibility validation through Apple Voiceover, Eye-Able, Wa11y.
Team Collaboration
Experienced in agile development using SCRUM methodology with tools like Jira, Confluence, Asana, Notion, Figma, Adobe XD, MS Teams, Slack. Fluent in German (native) and English.
Soft Skills
I would consider myself a creative problem-solver with strong organizational skills, open mindset, autonomous work style and reliable team collaboration abilities.
Philosophy & Mission
Interdisciplinary cooperation is at the heart of very successfull product: know what you know - and know who knows the rest. Whether it’s UX designers, stakeholders or content strategists, I see collaboration as the key to innovation. By bridging gaps between specialties, I help teams speak a common language, leverage each other’s strengths, and move faster together.
Ultimately, I’m driven by the idea that sustainable, high-quality software can shape a better future. By combining technical rigor with open collaboration, I'll support your team building solutions that scale brilliantly today - and remain relevant long into tomorrow.
In my view, the big challenge in web development is not the short-term provision of complex features, but rather the ability to guarantee this in growing environments over the long term.
The basis for this is a well-structured code base and clean architecture as a foundation, as well as the consistent use of patterns and good test coverage. By adhering to these three basic principles, it is not only possible to potentially reduce complexity and ensure low error rates and stable performance, but also to implement a highly scalable and maintainable application. Underlying this, I rely on adherence to common QA processes, code reviews to share knowledge and ensure quality, and adherence to established patterns and principles (such as DRY, SOLID) that make code predictable and robust. In my view, it is important to cultivate an awareness and spirit of ambition and discipline within the team.
Another building block, in my opinion, is documentation that is as clean as possible, in order to make it easier for new team members to get started and to enable quality criteria to be maintained. It's not about green marketing, but about technical durability and low life cycle costs.
A good product is the result of teamwork—that's why I value interdisciplinarity. My academic background is based on the teachings of social economics, which attempts to shed light on problems from a business, legal, economic, and sociological perspective. Often, different solutions to problems can be identified from the various perspectives and toolkits. During my studies I've learned that it makes sense to approach problems with a broader horizon, in order to develop truly good solutions ensuring solving a problem by involving technical, monetary, visual and last but not least the users perspective.
A brilliant developer working in isolation may well solve a technical problem, but open collaboration – through transparent communication, shared knowledge, and the active inclusion of all perspectives – ensures that we ultimately solve the right problem and that the solution can be optimally tailored to all stakeholders (users, business, development). From my perspective as a developer.
I consider it essential to advise, identify problems and opportunities, and engage in constructive discourse with stakeholders from other disciplines in order to bring my arguments to bear and enable product managers to make the right decision.
Accessibility isn't just a social responsibility; it's a fundamental aspect of building a high-quality application. By prioritizing it, we ensure a better user experience for everyone—from those with permanent disabilities to users with temporary limitations like a broken arm or a poor internet connection. This inclusive approach not only reflects a commitment to all potential users but also expands our market reach and ultimately enhances the overall usability for every user.
My approach to accessibility is comprehensive and professional. I follow W3C best practices to meet specific compliance levels (A, AA, or AAA), collaborating closely with UX/UI designers from the earliest stages of development. This ensures that accessibility is integrated into the core concept of an application, aligning with both user needs and technical requirements.
To maintain a high standard of quality, I use a combination of automated and manual testing. I regularly test with screen readers and other assistive technologies to catch issues that automated tools might miss. Additionally, I utilize monitoring tools to proactively identify and resolve any accessibility issues as early as possible in the development lifecycle, well before deployment. This proactive approach minimizes rework and ensures the final product is a top-tier, accessible application.
Navigating the inherent tension between quality and time-to-market is a core challenge in software development. My philosophy is that the fastest path to a durable solution is through clean, sustainable code. While I recognize that critical issues like bugs or urgent legal mandates demand immediate action, building a complex application is a marathon, not a sprint. Rushing leads to technical debt, which slows us down significantly in the long run.
I focus on delivering high-quality, maintainable, and scalable solutions efficiently. My approach isn't about over-engineering; it's about being pragmatic. I prioritize spending the time necessary to build the application correctly from the start. This proactive mindset minimizes future rework and ensures the product remains adaptable to new requirements, ultimately accelerating our development velocity over time.
In general I would say I run pretty fast! ; )
The conviction that great software can empower people and improve their everyday lives. Whether it's a seamless user experience, a barrier-free interface, or a stable application that reliably does its job in the background—I want to build things that make a real, positive difference.
The code itself is the tool, not the purpose—interdisciplinary teamwork, insight into different schools of thought, and the associated harmonization of constructive arguments and perspectives to create the best possible software that empowers people to improve their everyday lives is a major motivator for me.
Still have questions?
Can’t find what you’re looking for? Check out the FAQ for answers.
I am proud to present the organisations with which I have partnered during my career, along with the open-source projects I have created and still continue to maintain. Real-world collaborations and community-driven code, all under one roof.