Skip to main content

Navigation

  • Client impact
  • Writing

AI Solutions

  • AI Systems
  • AI Development

Software teams

  • Design Systems
  • Product Design & Engineering
  • API Platforms
  • View all services for software teams
Get in touch
  • AI Systems

    Model-agnostic AI systems and agents that do real work

    AI Development

    Custom apps and tools built with AI-enabled engineering

  • Design Systems

    Depth of experience that few can match

    Product Design & Engineering

    Experts in cross-functional collaboration

    API Platforms

    Node.js, React, & GraphQL at scale


    View all services for software teams
  • Client impact
  • Writing
  • Contact

Our way of working

The Thinkmill Method

We’ve had the privilege to work on an amazing variety of projects over many years, exposing us to many and different kinds of teams and problems. Over time, we’ve developed a method for product development that helps us build compelling software.

This is the teaching material of this method. We use it as a resource when training Thinkmillers one-on-one in the principles, culture, and practices of how we work. It’s a living document that evolves as we evolve our practice. We’re sharing this method in the hope that it’s of interest, and maybe even useful.

What is the Thinkmill Method?

A way of approaching software design and development that increases the likelihood of shipping good and compelling software, while maintaining the wellbeing of the people involved. It focuses on team dynamics, silo-breaking, and shared responsibility as foundational for cultivating unified and productive teams.

It is not a framework, prescription, or a paint-by-numbers affair. It assumes (and requires) competent craftspeople who care deeply about the problems they’re solving and who know how to wield the tools of the trade. Like all good professional tools, there are few guard rails, and lots of sharp bits.

The Thinkmill Method comprises:

  1. Fundamentals – the principles and mindsets that underpin the Thinkmill method
  2. Playbook – the tools and processes for which we reach

Subscribe for updates

For updates on future Thinkmill method publications, subscribe to our newsletter.

Fundamentals

The basic principles and mindsets that underpin our approach.

  • Design is a team sport

    Design is a conversation and good-faith negotiation between multiple practices, not something that “designers” do, and others wait to build. We use “design” in the holistic sense, encompassing everything that contributes to a positive user experience outcome – interface, database, API, pricing, etc. Good and compelling products result from successfully integrating these practices into a coherent and compelling whole.

  • Work in the open

    By working in the open, it’s much easier to stay in sync, and it enables the design conversation to take place with less friction. Working in the open means actively and regularly sharing your WIP with the team, and stakeholders. Doing so reveals gaps, mistakes, bugs, and dead ends, and it’s a highly efficient and accessible way to communicate context and status.

  • Schema-led

    We follow a schema-led approach in our work. A schema (conceptual, database, or API) describes the domain in terms of objects and their relationships, and is an especially useful artefact that builds shared understanding between practice areas. When defined in code, it serves as a shared source of truth, allowing UX/UI, front-end, and back-end work to proceed independently with confidence.

  • Design artefacts are an abstraction

    We use abstractions (interface designs, UX wireframes, entity relationship diagrams) to communicate and collaborate across practice areas. However, abstractions only approximate the actual product and user experience. As early and much as possible, work with or close to code.

  • Stay synced

    By working in-sync from the start, building shared context and understanding together, and not getting too far ahead of each other, cross-functional teams will make better trade-offs and fewer compromises.

  • Build for user-experience outcomes

    People use the software we make. Therefore we hold positive user-experience outcomes to be the primary and shared goal (see design is a team sport). We frame goals in UX terms, and we make decisions with respect to and with awareness of their impact on the users’ experience.

  • Check your blindspots

    Similar to cars, our design tools have blindspots and limitations of which we need to be aware. For example, it’s hard to design for performance in Figma, a11y in a product spec, or for usability in a database schema. The team looks out for each others’ blindspots and ensures all facets of software (usability, accessibility, performance, desirability, etc) are considered and designed to create good and compelling products.

  • Bias towards code

    A significant amount of time can be spent pushing pixels around a screen. Jump into code as soon as possible to validate assumptions and get a feel for how the real user experience is shaping up. Working with code will reveal blindspots that lurk in design artefacts.

  • Mind the gap

    Gaps exist at the edges of practice areas – either between what an interface design calls for, and what the API currently allows; or what the business wants, and what’s possible in the back-end. Gap finding involves habitually comparing the UI or UX spec against API or back-end ones, and spotting the difference. Gap filling involves either changing the interface, the system, or the scope/requirements to ensure parity.

Playbook

The tools, ceremonies, and artefacts we use when working together.

  • Activity Mapping

    Activity mapping is a way to dynamically capture, and work on, product requirements in a format that’s more useful than a static document.

    October 2024·3 min read
  • Core concepts

    Core concepts are an expression of a project‘s underlying data model and relationships, translated into a written format that the team can build an aligned understanding on.

    October 2024·4 min read
  • DACI

    Created by Atlassian – DACI is a framework that helps delivery teams make effective and efficient group decisions.

    October 2024·1 min read
  • Design Ethnography

    Adopted from the world of Anthropology, Design Ethnography is a research method that captures everyday life to discover interesting and unseen user experience opportunities.

    October 2024·3 min read
  • Functional wireframing

    Functional wireframing documents how the various pages and interface elements of an app or website need to come together in order to support the user.

    October 2024·4 min read
  • Kickoff

    The kickoff is a document creation ceremony that serves as a high-level contract between the business and delivery team that captures the goals of the project that helps to reveal hidden assumptions which may cause issues down the road.

    October 2024·4 min read
View all plays

Related resources

Boris (Thinkmill’s CEO & Head of Design) spoke about our methodology at the Delighters meetup in Sydney, Australia. At that time we toyed with calling the method “Antifragile”, but changed our mind later.

  • article

    Your agent believes that docs folder

    The agent trusted a committed docs folder of generated artefacts over my instructions. I deleted the lot and lost nothing.

    September 2026·8 min read
  • article

    A behavioural framework for the monsters in your team

    The AI in Design 2026 report captures a profession mid-mutation. The "Frankenjob" label the coverage put on it misses the seam where the real work happens.

    May 2026·5 min read
  • article

    Storybook and Mock APIs: A Powerful Prototyping Combo

    No back-end? No worries! In this tutorial we’ll be using Storybook and a Mock API to create a mocked prototype so we can get on with keeping our stakeholders excited.

    May 2024·12 min read
  • talk

    Unleashing Designers with Tailwind CSS

    How TailwindCSS can help bridge the gap between design and development, and foster a more inclusive and efficient working environment.

    April 2024
  • news

    Boris was a panellist at Design x Engineering Co-Lab

    Our Co-CEO, Boris Bozic, was one of three expert panellists who spoke at the first Design x Engineering Co-Lab on Design Systems, in Sydney. We’re proud to have his serious design systems knowledge at the helm of our design-engineering practice. Thank you for the words of wisdom and experience shared by the other panellists Dominik Wilkowski and Maria Christley; and to Morgan Fletcher for MC-ing the event, and Atlassian for hosting us with an impressive pizza spread. We’ll be there for the next.

    August 2023
  • article

    What we learned applying the Thinkmill Method to a complex accounting app

    We recently wrapped up delivery of a feature for a client’s complex accounting app. The project presented a valuable opportunity to battle-test our thinking around how we build products. We implemented a range of activities and techniques from the Thinkmill Method, and came away with valuable insights related to where it shines, what’s needed in order for it to do so, and how to improve it going forward. Here‘s what we learned along the way.

    May 2023·7 min read

We’d love to work with you

Get in touch

Footer

Thinkmill is a member of the Tech Council of Australia(opens in new tab).

AI Solutions

  • AI Systems
  • AI Development

Software teams

  • Design Systems
  • Product Design & Engineering
  • API Platforms
  • View all software teams

Client impact

  • ELMO
  • Tiimely
  • Atlassian
  • Reckon
  • AnywhereWorks
  • View all client impact

Open Source

  • Keystone (opens in new tab)
  • Keystatic (opens in new tab)
  • React Select (opens in new tab)
  • Classnames (opens in new tab)
  • Manypkg (opens in new tab)
  • Changesets (opens in new tab)