What does POP mean by a fullstack developer?

The term “fullstack” can be quite overloaded; often it means someone who can do traditional web-based frontend and backend programming tasks; sometimes it simply means a Javascript developer who can use Node!

Having considered what we mean by the full-stack developer we have decided that we mean someone:

  • who can take complete responsibility for creating a feature
  • being technically capable (with support) of making changes in any part of our stack to deliver the feature
  • capable of demonstrating that the feature works as expected and meets the requirements of the users
  • who will put the feature into production and monitor and support it when issues arise

In terms of technical skills we think that translates into the following abilities:

  • Frontend development
  • Server-side and service development
  • Infrastructure
  • Operations: availability and reliability
  • Security

We recognise that it is hard to be an expert in everything but it’s enough to get by in each and area and have few that you do really well. Knowing what you don’t know is important and having the humility to ask for help is important.

If we as a team want people to have these skills we’ll need to support people with training, mentoring and time to practice new skills. We’ll also need to support one another and share what we know.