Talk to me in English or German.
- GitHub
- alexclaes
- Mastodon
- @alex@claes.social
- Alexander Claes
- Alexander Claes
My approach to frontend development follows a simple philosophy: build for everyone, then refine. The foundation is solid, semantic HTML to ensure accessibility. With CSS, I shape the app's personality, creating an intuitive and cohesive visual experience. Then, I introduce JavaScript, progressively enhancing the core structure to deliver the app’s functionality - ideally by crafting reusable Web Components. This process naturally incorporates performance best practices.
In many cases, I find it valuable to build a small UI library tailored to the specific needs of the app, providing solutions that are precise and efficient. That said, I also have extensive experience with modern frameworks like React and Next.js, which can be excellent tools depending on your project's needs and team structure.
With a background in media design, I not only understand code but also principles of design. This allows me to communicate and collaborate effectively with web designers and understand their vision. I know, that subtle design details, micro-interactions and thoughtful touches can turn a functional app into an experience users truly enjoy.
A great frontend might engage with users, but in most cases doesn't provide enough to solve real world business requirements - efficiently handling data and complex processes does.
I’ve designed, built and worked with RESTful and GraphQL APIs to connect frontend apps through backend apps to MySQL and NoSQL databases.
Back in the days I worked with PHP using frameworks like Laravel, Symfony or CodeIgniter. Later on I was very keen about Python with Django or Flask. With my background in frontend development, writing backend code with Node by using Express and Helmet comes natural.
When handling data, security is always a priority. While I would never claim to be a security expert, I consistently incorporate security measures throughout development.
Besides classic hosting on a complete server systems, I have experience working with cloud platforms such as AWS and Azure. Setting up modern, automated deployment strategies, including CI/CD pipelines and managing staging systems is fun to me.
I take a minimalistic approach to life — and software design. My focus is on using a few well-chosen concepts to create effective solutions while keeping everything clean, tidy, and organized. I minimize abstractions to ensure the code remains readable, understandable, and maintainable over time. Code should be self-explanatory and straightforward. Consistent design patterns and clear documentation are essential for keeping systems reliable and easy to work with, even as they evolve.
Software isn’t just about solving today’s problems — it’s about continuing to solve problems in the long run, even as the system undergoes constant change. Building maintainable, scalable systems with an emphasis on long-term planning and decision-making is crucial. Technical decisions should enable, not hinder, the ability to adapt to new requirements as they arise.
Over the years, I’ve gained experience across a wide range of areas: design, frontend, backend, operations, planning, organization, and business. This versatility allows me to bring together people from a lot of disciplines to work as a team and create solutions that really work. I can provide value by connecting the dots between different people and ensure everyone is moving in the same direction.
I find a lot of joy in the work I do, and I genuinely love my job — that's why I’m self-employed. Being in the role of a team lead, I try to spread that spirit through the team. When people enjoy what they’re doing, it shows in the results.
Much of my work involves requirement engineering, which means I’m good at taking ideas and concepts and turning them into concrete, workable tasks for development teams. I really like puzzling out both the functional and non-functional requirements of a software project. I’m comfortable stepping into the role of a product owner when needed, balancing the technical side with the business side to make sure we’re delivering real value.
Throughout my career, I’ve had the opportunity to work alongside some truly exceptional people who have taught me a great deal. I’ve worked in a variety of environments with different teams and technology stacks. This has shaped my ability to dive into challenging situations and identify the matching solution that fits the problem at hand. Thinking quickly through complex and abstract concepts comes natural to me.
In university, I studied a combination of IT and business administration. This gives me a solid understanding of both the technical and economic aspects of software projects. Being able to see both perspectives allows me to ensure that what we build makes sense both technically and strategically.
I’ve always been driven by a love for learning. I enjoy picking up new ideas and staying curious about technology. I like passing that mindset on to others. Sharing knowledge has become a big part of my work.
Multiple time I’ve had the opportunity to work as a teacher. I taught groups of students, covering the basics of software and web development. My approach is very hands-on, while being deep in the code. It's not just about transferring information — it's about inspiring curiosity and helping others develop the skills they need to grow.
I’ve had the pleasure of working with a few clients to upskill their teams in-house, right alongside real projects. It’s both super fun and effective to empower teams by starting with short lessons on general concepts, followed by one-on-one coaching tailored to each person’s specific needs. This slim and effective approach helps tackle specific tasks together and provides practical solutions, within a teaching lesson.
Talk to me in English or German.