Fabian is a Technology Leader working in Sydney, Australia. This Blog contains his personal opinions and observations on technology and software development.
Testing large, complex web applications is a monumental challenge. As applications grow, so does the test suite. Traditional test automation frameworks, often built on the Page Object Model (POM), can become brittle, hard to maintain, and difficult for non-technical stakeholders to understand. What if we could build a framework that was not only robust and scalable but also produced living documentation that the entire team—from developers to business analysts—could use? In this post, we'll build a production-grade test automation framework from the ground up. We'll combine the power of modern tools and patterns to create a solution that is maintainable, readable, and ready for the demands of large-scale applications. Table of Contents The Dream Team: Our Technology Stack Why This Stack? The Core Concepts Setting Up the Project: The Bluepri...
In the fast-paced world of software development, engineering teams are the engine driving business innovation and success. But how do you ensure this engine is running at peak performance? GitHub's new Engineering System Success Playbook (ESSP) offers a comprehensive framework designed to help organizations measure and improve their engineering performance, leading to better business outcomes. This playbook isn't just about writing code faster; it’s a holistic guide that emphasizes the synergy between quality, velocity, and developer happiness. By adopting a systems thinking approach, the ESSP helps teams identify bottlenecks, implement meaningful changes, and foster a culture of continuous improvement. The Core Philosophy: Four Zones of Success Inspired by leading industry frameworks like SPACE, DORA, and DevEx, the playbook introduces a layered system of four "foundational zones" that underpin engineering excellence. Developer H...
In the world of modern web development, the complexity of our React applications often hinges on one critical piece: routing. How we handle different page layouts—like a main app layout with a sidebar, a simple public layout for login pages, or a full-screen marketing layout—can make or break our codebase's maintainability. For years, we've wrestled with conditional rendering in a top-level App component. We'd inspect location.pathname and play a game of "which layout do I render?", leading to brittle, non-colocated logic. Today, we're going to build a production-grade application that solves this problem elegantly using TanStack Router . We'll leverage its powerful, type-safe, route-centric approach to create clean, scalable layouts. Our Tech Stack: Framework: React with Vite Language: TypeScript Routing: TanStack Router (v1) Component Develop...
Comments