Skip to content

Latest commit

 

History

History
144 lines (113 loc) · 7.33 KB

role-guide.md

File metadata and controls

144 lines (113 loc) · 7.33 KB

SDE Frontend roles

Guide to help you understand different frontend roles, their expectations and required skills

SDE1 - Frontend / Junior frontend developer

Software development engineer 1 - frontend is a role involving frontend development to build webpages and mobile application interfaces using HTML, CSS, and JavaScript. The candidate should be familiar with web development in general and have an understanding of popular frameworks. Frontend experience range expected for this role is 0 - 3 years

Expectations
  • Hands-on knowledge of HTML, CSS to design the web pages
  • Understanding of core JavaScript concepts and implementation knowledge
  • Debugging skills & developer tools usage
  • Clarity on synchronous & asynchronous program flows
  • Good problem solving and programming skills
  • Knowledge of version control systems such as Git
  • Interest and ability to work on the given tech stack
  • Mindset to work in collaboration and inclusion
Core skills
  • Fundamental knowledge of HTML5, CSS, JavaScript syntaxes and their usage
  • Understanding of doctype, structure, meta info, tags, elements levels
  • Knowledge of DOM, storage mechanisms, form handling
  • Experience in loading of external scripts & styles, event handling
  • Understanding of specificity, cascading, CSS selectors
  • Knowledge of box model, positioning, display methods
  • Experience in any CSS library/framework
  • Understanding of variables, primitives, operators, scopes, context
  • Knowledge of timeouts, callbacks, promises, browser API
  • Hands-on experience of ES6 and newer syntaxes
  • Familiarity with any JS library/framework
Engineering skills
  • Fundamental knowledge of programming along with most used data structures
  • Experience in solving most commonly known practical challenges/algorithms
  • Knowledge of request-response model, HTTP basics, asynchronous programming
  • Understanding of different browsers, session, server-side communication
  • Familiarity of working on tools such as Git, code editor, deployment, etc.

SDE2 - Frontend / Mid-senior frontend developer

(includes everything from SDE1)

Software development engineer 2 - frontend is a technical role involving frontend development to build webpages and mobile application interfaces using HTML, CSS, and JavaScript. The candidate for this role should be well versed in creating pixel-perfect UIs and have strong web fundamental knowledge. The candidate should already have worked on a frontend framework & have known it in detail. Frontend experience range expected for this role is 3 - 6 years

Expectations
  • Building pixel-perfect web apps using HTML, CSS, or libraries
  • Strong in core JavaScript and knowledge of common design patterns
  • Interest and ability to adapt quickly to any framework used in the company
  • Extensive knowledge and hands-on in debugging
  • Capability to implement frontend best practices and standards
  • Ability to handle the projects from scratch and refactor the codebase
  • In-depth knowledge of any one of the popular frontend frameworks
  • Ability to guide and support junior developers
Core Skills
  • Strong fundamental knowledge of HTML5, CSS, JavaScript syntaxes and their usage
  • In-depth knowledge of CRP, storage mechanisms, form handling
  • Good understanding of accessibility, SEO, DOM manipulations
  • Excellence in responsive design, modern layouts, stacking context
  • Knowledge of cross-browser compatibilities, transitions, animations
  • Expertise in async flows using promises, async-await, generators, requestAnimationFrame
  • In-depth knowledge of closures, prototypes, modules
  • Good hands-on experience in CSS library/framework, SASS, CSS in JS
  • Extensive knowledge of a JS library/framework
Engineering skills
  • Expertise in version management systems such as Git
  • Strong programming knowledge and ability to solve various problems using efficient techniques
  • Knowledge of building performant and accessible web applications
  • Hands-on experience of state management, internationalization, TypeScript, unit testing, etc.
  • Familiarity of SSR, web components, node packages, docker, cloud services, etc.
  • Ability to write clean code and follow the industry best standards

SDE3 - Frontend / Senior frontend developer

(includes everything from SDE2)

Software development engineer 3 - frontend is a technical role involving frontend development to build webpages and mobile application interfaces using HTML, CSS, and JavaScript. The candidate should have expertise in the frontend framework and the capability to design the large-scale application from scratch or transform the legacy application into a modern web app. The candidate should have good knowledge of designing project architecture. Frontend experience range expected for this role is 6+ years

Expectations
  • Expertise in HTML5, CSS, JavaScript to deliver the web apps
  • Expertise in delivering secure, accessible, performant web application
  • Extensive knowledge and hands-on experience in debugging complex code bases
  • Good Knowledge of cloud services & CI/CD tools
  • Knowledge of structuring and architecting small scale to large scale projects
  • Capability to implement frontend best practices and update with trends in the frontend community
  • Ability to manage and guide team technically
Core skills
  • Expertise in advanced JavaScript and design patterns
  • Expertise and in-depth knowledge of JS frameworks and CSS libraries
  • Expertise in web performance, perfromance improvement strategies, light house
  • Strong understanding in service workers, web workers, progressive web apps
  • Strong understanding of TypeScript, Webpack, web components, functional/reactive programming
  • Extensive knowledge browser internals, JS engines and web security
  • Good experience on various industry tools such as docker, storybook, GraphQL, Cypress, firebase
  • Knowledge of databases, SQL and No SQL
Engineering skills
  • In-depth knowledge of project migration, TDD, End-to-end testing tools, micro frontend, CI/CD, etc.
  • Experience in setting up the project from scratch with various Linters & tool integration
  • Knowledge of building highly scalable and maintainable web apps along with architecture
  • Capability to explore various tech stacks & decide the suitable tech stack
  • Understanding of building custom libraries, packages, and frameworks
  • Ability to explore the technologies and trends to keep the project standards up to date



Visit FAQs section.


Note

These are not guidelines or standards to be followed. This document is an attempt to collect the general practices being followed by the industry in recent times and share such information with you to help you to prepare well to become a competent frontend developer.