There are a plethora of topics about what a senior frontend developer should know. The developer gets judged by the complexity of the nature of the project he has worked on. Here are the topics that I would expect a senior frontend developer to know.
I would write a blog post targeted at senior frontend developers because the potential of a senior developer is enhanced or limited by the project he works on. Let’s say the tech stack of the project is a CMS like WordPress then the developer thinks that’s all it takes to be a senior frontend developer. This post is more like normalizing the senior frontend skillset.
HTML5 with web APIs
CSS3 with animations & interactions
React JS with a redux, redux-thunk, and react-router (or anyone lib or framework)
Date manipulation library like momentJS
Data visualization library like D3.JS
A mapping library like google maps
Responsive web development with/without bootstrap or similar EDL
Working experience with webpack
Deployment of reactJS app with whatever backend
Familiarity with performance patterns
Experience working with CDN, various media assets.
Unit testing with JEST, react testing lib
Setup tooling with npm scripts & work with npm packages.
Experience in handling authentication, caching, etc on frontend projects.
The life of a senior developer is never easy because there is a lot to know and perform. Here are a few more things
Node.JS with framework like loopback
Experience with creating and consuming REST, GraphQL APIs
Deploying nodeJS proxy servers with PM2 on Linux
Knowledge of load balancers and scaling horizontally.
Create schemas with SQL databases like PostgreSQL
Work with NoSQL databases like MongoDB
Talk fluently in algorithms, data structures, and design patterns
Pick the tech stack for projects
Estimating software by analyzing mockups
Build offline web experiences, mobile experiences with React native, and desktop experiences with Electron
Get into architectural discussions about CSS or any other frontend technologies choices which we have. Architecture discussions are not about which code to sit in which module. The modularization of code is a refactoring discussion the team should do.
Upgrading packages, implementing CI/CD with tools like Github actions
Exposure to modern stuff like PWA, SSR, NextJS, Cloud deployments, etc
Help your team members, give knowledge transfer sessions & conduct tech interviews.
Get some certifications under your belt or domain knowledge.
The bad news is that the list mentioned above is not complete in itself. I did not talk about cool things like automation, web security, web assembly, etc. I did not talk about rocky topics like office politics or getting stuck on a tech stack due to org policy etc.
You can leverage on what you know already while you are keeping up with the happenings in the community.
I recommend bookmarking a couple of websites that you find useful and visit them often. Most websites are going to touch base on topics at a basic level which is not quite useful for senior-level professionals.
Invest and find out the niche blogs or publications. Of course, reading books is a great way to stay updated. Writing some code every day is still a good idea.
say hi to open source or problem-solving.
As a senior-level dev, I see a lot of developers swamped at work. To escape the swamp they tend to take a vacation yet attend meetings which seem to be an oxymoron. Here is what worked for me.
More than managing time, we need to be good at drawing boundaries around our time, choices. Build a not-to-do list.
I do not prefer to attend meetings in the evenings or at night. I use this time for something like blogging, reading, etc. Be ready to close the door and work, when your family members think you have worked enough for the day.