One idea that has lodged itself into my brain recently (largely from this panel discussion) is how a front end developer needs to be aware. In a general sense, the front end developer is positioned in the middle of lots of other jobs. Everybody involved in a web team ends up talking with the front end developers. That makes sense. The front end developers create the actual thing people interact with. Everything comes together with the front end developer. Perhaps that’s why it’s such a fun job!
Because the front end developer is this central hub position and dealing with lots of different people doing lots of different jobs, the job can be done better if they are aware. Aware of everything else that makes a website tick.
A front end developer is aware of design. If they aren’t a designer themselves, they know how important design is. They have good taste in design. They know about the tools involved. They know where the design role fits into the process.
A front end developer is aware of the back end. If they aren’t a back end coder themselves, they know how important the back end is. They know what the back end is capable of delivering and what it isn’t. They know the responsibilities back end developers have. They know the languages involved. They know how to ask for what they need on the front end.
A front end developer is aware of the network. They know that websites are delivered over the internet, a network, and that that network is a wild and sometimes unpredictable place. They know networks can be on or off, fast or slow, and reliable or unreliable.
A front end developer is aware of performance. If they aren’t entirely performance focused themselves, they know that performance is vital to a website’s success. They know performance is a complex world onto itself. They know there are quick wins and long term struggles. They know that so long as the back end is fast, the other 80% of the time a website is loading is a front end concern.
A front end developer is aware of content strategy. If they aren’t a content strategist themselves, they know that websites live and die by the content on them. They know that the lack of a content plan can cause problems that you may not be able to develop your way out of. They know that the people that use the website is what matters and those people need to find what they need and expect it to be in good shape.
A front end developer is aware of databases. The content lives there. The content must be in good shape. The front end developer can only work with what comes out of those databases. The front end developer needs to combine what comes out of those databases with templates to make the website happen.
A front end developer is aware of testing. So many kinds! Integration testing. Regression testing. User testing!
A front end developer is aware of systems. They might be responsible for implementing a design system, or an icon system, or a coding style guide. They might have to create those systems themselves. They might need to document those systems. They
A front end developer is aware of devops. They are writing and committing code along with every other coder on the project, so they need to adhere to the same setup as everyone else. If they didn’t write the build system themselves, they know what it is, what it does, and what it is capable of. If they didn’t set up deployment themselves, they know how to use it.
A front end developer is aware of servers. Without them, there is no website.
A front end developer is aware of accessibility. If they aren’t well versed in building for accessibility themselves, they know that it’s important. They know how to test for it. They know who to talk to about it. They know there is quick wins and long term struggles regarding it.
A front end developer is aware of the device landscape. They know the web is everywhere these days and a good website needs to meet users there. Big screens, little screens, touch screens, far away screens, black and white screens. The front end developer is aware of the unknown.
That’s just a handful of the things a great front end developer should be aware of. The more the better.