Front End Vision

What is the problem I am currently solving?

 

What is the problem I am not currently solving?

How to reason about this?

What are the problems our front end IS currently solving?

The front is doing client stuff

Writing client-side code to display our system value to our customers and let them interact with our system.

Or is it ?

The front is also...

...coordinating back-end components to create a useful experience

...implementing domain logic

The front is also...

...coordinating with third party services, tracking and monitoring, A/B testing...

The front is also...

...doing authentication and authorisation related stuff

The front is also...

Are we still talking about front-end ?

What we collectively call "the front" is actually a customer facing web app

A.K.A the way people experience the Sunday value proposition

Writing client-side code to display our system value to our customers and let them interact with our system.

Web Apps ( = User experience)

Performance

Domain Logic

Monitoring

UX

The front at Sunday

Save time for what matters...

Our job is not to write client-side code, our job is to build the technical bricks that unlock great UX

Principle #1

What are the problems our front end IS NOT currently solving?

What pain points are not directly addressed by our current architecture?

The alignment problem

Heard at the office

React is difficult

Why would the cop front works better than previous attempt at alignment ?

Is Remix yet another framework ?

Why do we have multiple libs that do the same thing ?

Where do we stand regarding BFF ?

Let's talk about React

A JavaScript library for building user interfaces

Does our alignment policy save or waste us time? 

Spending vs Investing

Help developers focus on what instead of how

Principle #2

The ownership problem

Flow stakeholder

    vs

Standalone feature

Does our alignment policy save or waste us time? 

Pillars dictate ownership but user experience drives collaboration

Principle #3

A tale of three principles

Our job is not to write client-side code, it's to build the experience people have of Sunday

Principle #1

Our time should be spent on creating value, not on debating over tools

Principle #2

Pillars dictate ownership but user experience drives collaboration

Principle #3

React Router

A use case

A decision framework

Does this technical help us improve user experience?

 

Does this technical solution help us focus on delivering value?

 

Does this technical solution facilitate collaboration between pillars?

Made with Slides.com