getting started

For Developers

Have ideas? Want to get involved?
Join in and help us to build the next great experience.


What We Do

At Herman Miller, our team of developers is responsible for creating and maintaining all things Digital. Our model is lean, agile, and user centric. We work closely with UX, Design, and Product ownership to continuously prioritize the things that add value to our customers.

Who are our customers? Anyone who interacts with an application. They include end users and internal team members or stakeholders responsible for maintaining content or platform.

We enjoy learning, adapting, and continuously moving our technology forward. Recognizing that the best way to learn is to collaborate with each other, we look for opportunities to try new things, new ways of working, and foster an environment that is open to asking lots of questions. Great ideas can come from anyone at any time.


How We Work

Our team currently follows the Scrum practice of operating inside of sprints that are two weeks in length. Every two weeks we deliver a "potentially releasable increment," review the work that was completed, and plan for the next sprint.

We prefer to keep the dev team small and dedicated to a single effort because we find that it increases our reliance on each other and commitment to one another. This in turn creates a greater sense of ownership for what is being built. It also allows us to move faster and react to change easier.

We also try to run content stories in parallel to development, focusing technical efforts around key areas of an application that our authors would like to prioritize. This prevents a content bottleneck at the end of a project and also allows the team to adapt to changing content needs while active development is underway.

We follow a Git-based development workflow, use JIRA to manage our product backlog, and Confluence for project documentation.


Platforms

The Herman Miller stack contains a large mix of tools which can vary depending on the particular project or need. It includes full solution CMS platforms as well as smaller Javascript based micro-sites and Single Page Apps (SPAs) written in Angular or React.

Adobe Experience Manager (AEM) powers our consumer facing websites where large scale, multilingual content management is at a premium. This system uses Java on the backend and a mixture of frontend technologies which were developed over time, including ES6, Angular, and React.

Picnic (this site) is built using the Next.js React framework. Content is managed in a headless CMS called Prismic. We use Next.js so that we can run React server-side (SSR) without worrying about server code and we use Prismic so that our content is accessible via API and our frontend is fully independent.


Accessibility

We have a full section of Picnic dedicated to the topic of Accessibility. However, it's important to note here that we have a strong focus on the development side to ensure that what we're building complies with WCAG standards.

Our development team commitment to building accessible applications is twofold.

  1. For existing applications, we will audit and make a best effort to ensure that these applications follow the WCAG 2.0 AA standard.
  2. For new applications, we include accessibility in our workflow to ensure that what we build follows the latest WCAG 2.1 AA standard.

Resources

The new success criteria in Web Content Accessibility Guidelines (WCAG) 2.1.

External LinkVisit External Link

Stackshare decision regarding our Picnic technology choices.

External LinkVisit External Link

Delivering Modern Website Experiences: The Journey to a Content Mesh.

External LinkVisit External Link