> For the complete documentation index, see [llms.txt](https://handbook.redivis.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://handbook.redivis.com/careers/engineering/frontend-engineer.md).

# Frontend engineer

A frontend developer builds deep technical expertise, executes on product deliverables, and (at higher levels) owns system, architecture & deployment of products and features.

|                        Role                       | [Salary tier](/compensation/salary.md) |
| :-----------------------------------------------: | :------------------------------------: |
|   [Entry-level](#entry-level-frontend-engineer)   |                    4                   |
|  [Intermediate](#intermediate-frontend-engineer)  |                    5                   |
|      [Advanced](#advanced-frontend-engineer)      |                    6                   |
|        [Senior](#senior-frontend-engineer)        |                    7                   |
|         [Staff](#staff-frontend-engineer)         |                    8                   |
|     [Principal](#principal-frontend-engineer)     |                    9                   |
| [Distinguished](#distinguished-frontend-engineer) |                   10                   |

Each role below outlines a description of responsibilities, experience, and expected performance across different [axes](/careers/engineering.md#axes).&#x20;

### Entry-level frontend engineer

{% tabs %}
{% tab title="Technology (1)" %}
*Adopts*: actively learns and adopts the technology and tools defined by the team

* Comfortable with Javascript/HTML/CSS, React, Redux, additional open-source libraries
* New to field, 0-2 years experience in web development, school or demo projects
  {% endtab %}

{% tab title="System (1)" %}
*Enhances*: successfully pushes new features and bug fixes to improve and extend the system

* Builds components and small features
* Researches and learns new technical areas
  {% endtab %}

{% tab title="People (1)" %}
*Learns*: quickly learns from others and consistently steps up when it is required

* Participates in team meetings
* Builds respectful relationships within team
* Communicates needs and goals to manager
* Clear written and verbal communication
  {% endtab %}

{% tab title="Process (1)" %}
*Follows*: follows the team processes, delivering a consistent flow of features to production

* Receives detailed direction on all work
* Receives feedback from teammates and demonstrates improvement
* Keeps team informed of progress of deliverables
* Takes responsibility for communicating obstacles to team
* Learns and follows engineering best practices ([Git workflow](https://app.gitbook.com/@redivis/s/eng/devops/git-rules), [code style](https://app.gitbook.com/@redivis/s/eng/devops/styleguide), [frontend architecture](https://app.gitbook.com/@redivis/s/internal/frontend/architecture))
  {% endtab %}

{% tab title="Influence (1)" %}
*Subsystem*: makes an impact on one or more subsystems or team pods

* Operates within team, with a bias towards optimizing the team's productivity
  {% endtab %}

{% tab title="Diagram" %}
![](/files/-ME4vGHXAqUOfqMOqnni)
{% endtab %}
{% endtabs %}

### Intermediate frontend engineer

{% tabs %}
{% tab title="Technology (1)" %}
*Adopts*: actively learns and adopts the technology and tools defined by the team

* Proficient at Javascript/HTML/CSS, React, Redux, additional open-source libraries
* 2-4 years experience in web development
* Consistently delivers high quality work, on time, independently and as part of team
  {% endtab %}

{% tab title="System (2)" %}
*Designs*: designs and implements medium to large size features while reducing the system's tech debt

* Builds components and small features
* Contributes to projects with larger scope, demonstrating ownership of complex pieces.
* Debugs and resolves simple issues unassisted, and more complex issues with guidance
* Researches and learns new technical areas
  {% endtab %}

{% tab title="People (2)" %}
*Supports*: proactively supports other team members and helps them to be successful

* Actively engages in team meetings
* Builds relationships focused on collaboration, to enable productivity in teammates
* Works with manager to articulate needs and goals
* Excellent written and verbal communication
* Resolves conflicts respectfully and in a timely manner
* Open to diverse perspectives and ways of working
* Shares recognition of work across team, positively reinforces others' contributions
  {% endtab %}

{% tab title="Process (2)" %}
*Enforces*: enforces the team processes, making sure everybody understands the benefits and tradeoffs

* Receives general direction on routine work, detailed direction on newer assignments
* Adept at acknowledging and receiving feedback, and applying to improve work
* Keeps team informed of progress of deliverables
* Determines appropriate action by exercising judgement within defined practices
* Set personal priorities and work plan, while integrating dependencies on others' work
* Offers alternatives, incorporates input from others, asks for clarification
* Comfortable with engineering best practices ([Git workflow](https://app.gitbook.com/@redivis/s/eng/devops/git-rules), [code style](https://app.gitbook.com/@redivis/s/eng/devops/styleguide), [frontend architecture](https://app.gitbook.com/@redivis/s/internal/frontend/architecture))
  {% endtab %}

{% tab title="Influence (1)" %}
*Subsystem*: makes an impact on one or more subsystems or team pods

* Operates generally within team, with increasing awareness of influence of team's work within the department
  {% endtab %}

{% tab title="Diagram" %}
![](/files/-ME4v_of2BgkcRNuxE1X)
{% endtab %}
{% endtabs %}

### Advanced frontend engineer

{% tabs %}
{% tab title="Technology (2)" %}
*Specializes*: is the go-to person for one or more technologies and takes initiative to learn new ones

* Expert in Javascript/HTML/CSS, React, Redux, additional open-source libraries
* 3-5 years experience in web development
* Develops complete designs that satisfy design and engineering requirements
* Consistently delivers high quality work, on time, independently or as part of team
  {% endtab %}

{% tab title="System (2)" %}
*Designs*: designs and implements medium to large size features while reducing the system's tech debt

* Builds components and small features
* Contributes to projects with larger scope, demonstrating ownership of complex pieces.
* Specializes in multiple components or modules and understands dependencies between modules
* Debugs and resolves simple issues unassisted, and more complex issues with guidance
* Able to work on multiple projects with different scopes
* Writes clear documentation
* Considers diagnosibility, portability, reliability, maintainibility of features
* Proactively researches and learns new technical areas
  {% endtab %}

{% tab title="People (2)" %}
*Supports*: proactively supports other team members and helps them to be successful

* Proactive information sharing across teams, engagement in team meetings
* Builds relationships focused on collaboration, to enable productivity in teammates
* Works with manager to articulate needs and goals
* Excellent written and verbal communication
* Resolves conflicts respectfully and in a timely manner
* Open to diverse perspectives and ways of working
* Shares recognition of work across team, positively reinforces others' contributions
* Facilitate problem solving and work planning
* Considers others' schedules and priorities while managing own timeline
  {% endtab %}

{% tab title="Process (3)" %}
*Challenges*: challenges the team processes, looking for ways to improve them

* Receives general direction on routine work, detailed direction on newer assignments
* Adept at acknowledging and receiving feedback, and applying to improve work
* Keeps team informed of progress of deliverables
* Able to debate options, gather different perspective, and make recommendations
* Asks for input and incorporates ideas and solutions from others
* Demonstrates research and good judgement when choosing problem solving approaches
* Set personal priorities and work plan, while integrating dependencies on others' work
* Balances short term gains and long term benefit
* Contributes to improvements of engineering best practices ([Git workflow](https://app.gitbook.com/@redivis/s/eng/devops/git-rules), [code style](https://app.gitbook.com/@redivis/s/eng/devops/styleguide), [frontend architecture](https://app.gitbook.com/@redivis/s/internal/frontend/architecture))
  {% endtab %}

{% tab title="Influence (2)" %}
*Team*: makes an impact on the whole team, not just on specific parts of it

* Operates with peers across the team, with increasing awareness of influence of team's work within the department
* Strong focus on building productive relationships across team members
  {% endtab %}

{% tab title="Diagram" %}
![](/files/-ME4vcxdSBkgGAeyrkk0)
{% endtab %}
{% endtabs %}

### Senior frontend engineer

{% tabs %}
{% tab title="Technology (3)" %}
*Evangelizes*: researches, creates proofs of concept and introduces new technologies to the team

* Expert in Javascript/HTML/CSS, React, Redux, additional open-source libraries
* 4-7 years experience in web development
* Develops complete designs that satisfy design and engineering requirements
* Consistently delivers high quality work, on time, independently or as part of team
  {% endtab %}

{% tab title="System (3)" %}
*Owns*: owns the production operation and monitoring of the system

* Contributes to projects with larger scope, demonstrating ownership of complex pieces, especially those that require collaboration with other teams.
* Specializes in multiple components or modules and understands dependencies between modules
* Debugs and resolves simple and complex issues unassisted
* Able to work on multiple projects with different scopes
* Writes clear documentation
* Considers diagnosibility, portability, reliability, maintainibility of features
* Proactively researches and learns new technical areas
  {% endtab %}

{% tab title="People (3)" %}
*Mentors*: mentors others to accelerate their career-growth and encourages them to participate

* Proactive information sharing across teams, engagement in team meetings
* Builds relationships focused on collaboration, to enable productivity in teammates
* Works with manager to articulate needs and goals
* Excellent written and verbal communication
* Resolves conflicts respectfully and in a timely manner
* Open to diverse perspectives and ways of working
* Shares recognition of work across team, positively reinforces others' contributions
* Facilitate problem solving and work planning
* Considers others' schedules and priorities while managing own timeline
* Represents their team, and considers the impact to the team, when in conversations with others.
  {% endtab %}

{% tab title="Process (3)" %}
*Challenges*: challenges the team processes, looking for ways to improve them

* Receives general direction on routine work, detailed direction on newer assignments
* Adept at acknowledging and receiving feedback, and applying to improve work
* Keeps team informed of progress of deliverables
* Able to debate options, gather different perspective, and make recommendations
* Asks for input and incorporates ideas and solutions from others
* Demonstrates research and good judgement when choosing problem solving approaches
* Set personal priorities and work plan, while integrating dependencies on others' work
* Balances short term gains and long term benefit
* Contributes to improvements of engineering best practices ([Git workflow](https://app.gitbook.com/@redivis/s/eng/devops/git-rules), [code style](https://app.gitbook.com/@redivis/s/eng/devops/styleguide), [frontend architecture](https://app.gitbook.com/@redivis/s/internal/frontend/architecture))
  {% endtab %}

{% tab title="Influence (2)" %}
*Team*: makes an impact on the whole team, not just on specific parts of it

* Operates with peers across the team, with awareness of influence of team's work within the department
* Strong focus on building productive relationships across team members
  {% endtab %}

{% tab title="Diagram" %}
![](/files/-ME4vgx8GGFoJXT9qoP3)
{% endtab %}
{% endtabs %}

### Staff frontend engineer

{% tabs %}
{% tab title="Technology (4)" %}
*Masters*: has very deep knowledge about the whole technology stack of the system

* Expert in Javascript/HTML/CSS, React, Redux, additional open-source libraries
* 6-9 years experience in web development
* Develops complete designs that satisfy design and engineering requirements
* Consistently delivers high quality work, on time, independently or as part of team
  {% endtab %}

{% tab title="System (4)" %}
*Evolves*: evolves the architecture to support future requirements and defines its SLAs

* Contributes to projects with larger scope, demonstrating ownership of complex pieces, especially those that require collaboration with other teams.
* Specializes in multiple components or modules and understands dependencies between modules
* Debugs and resolves simple and complex issues unassisted
* Able to work on multiple projects with different scopes
* Writes clear documentation
* Considers diagnosibility, portability, reliability, maintainibility of features
* Proactively researches and learns new technical areas
* Strong working knowledge of backend systems; able to design and build with whole stack in mind.
  {% endtab %}

{% tab title="People (3)" %}
*Mentors*: mentors others to accelerate their career-growth and encourages them to participate

* Proactive information sharing across teams, engagement in team meetings
* Builds relationships focused on collaboration, to enable productivity in teammates
* Works with manager to articulate needs and goals
* Excellent written and verbal communication
* Resolves conflicts respectfully and in a timely manner
* Open to diverse perspectives and ways of working
* Shares recognition of work across team, positively reinforces others' contributions
* Facilitate problem solving and work planning
* Considers others' schedules and priorities while managing own timeline
* Represents their team, and considers the impact to the team, when in conversations with others.
  {% endtab %}

{% tab title="Process (4)" %}
*Adjusts*: adjusts the team processes, listening to feedback and guiding the team through the changes

* Receives general direction on routine work and newer assignments
* Adept at acknowledging and receiving feedback, and applying to improve work
* Keeps team informed of progress of deliverables
* Able to debate options, gather different perspective, and make recommendations
* Asks for input and incorporates ideas and solutions from others
* Demonstrates research and good judgement when choosing problem solving approaches
* Set personal priorities and work plan, while integrating dependencies on others' work
* Balances short term gains and long term benefit
* Contributes to improvements of engineering best practices ([Git workflow](https://app.gitbook.com/@redivis/s/eng/devops/git-rules), [code style](https://app.gitbook.com/@redivis/s/eng/devops/styleguide), [frontend architecture](https://app.gitbook.com/@redivis/s/internal/frontend/architecture))
* Provides feedback that focuses on the business impact of the behavior
* Iteratively works towards results on cross-team projects without over-analysis
  {% endtab %}

{% tab title="Influence (3)" %}
*Multi-team*: makes an impact not only on the whole team but also on other teams

* Operates with peers across the team, with awareness of influence of team's work within the department
* Strong focus on building productive relationships across team members, and regularly engages with other teams
* Identifies situations where collaboration between teams will yield good results.
  {% endtab %}

{% tab title="Diagram" %}
![](/files/-ME4vjWuN90z3sJ7HW4V)
{% endtab %}
{% endtabs %}

### Principal frontend engineer

{% tabs %}
{% tab title="Technology (5)" %}
*Creates*: designs and creates new technologies that are widely used either by internal or external teams

* Expert in Javascript/HTML/CSS, React, Redux, additional open-source libraries
* 10-14 years experience in web development
* Develops complete designs that satisfy design and engineering requirements
* Consistently delivers high quality work, on time, independently or as part of team
  {% endtab %}

{% tab title="System (5)" %}
*Leads*: leads the technical excellence of the system and creates plans to mitigate outages

* Leads projects with larger scope, demonstrating ownership of complex pieces, especially those that require collaboration with other teams.
* Specializes in multiple components or modules and understands dependencies between modules
* Debugs and resolves simple and complex issues unassisted
* Able to work on multiple projects with different scopes
* Writes clear documentation
* Considers diagnosibility, portability, reliability, maintainibility of features
* Proactively researches and learns new technical areas
* Strong working knowledge of backend systems; able to design and build with whole stack in mind.
* Chooses work that is appropriate to their level and works with the Engineering Manager to assign work to other members of the team
  {% endtab %}

{% tab title="People (3)" %}
*Mentors*: mentors others to accelerate their career-growth and encourages them to participate

* Proactive information sharing across teams, engagement in team meetings
* Builds relationships focused on collaboration, to enable productivity in teammates
* Works with manager to articulate needs and goals
* Excellent written and verbal communication
* Resolves conflicts respectfully and in a timely manner
* Open to diverse perspectives and ways of working
* Shares recognition of work across team, positively reinforces others' contributions
* Facilitate problem solving and work planning
* Considers others' schedules and priorities while managing own timeline
* Represents their team, and considers the impact to the team, when in conversations with others.
  {% endtab %}

{% tab title="Process (4)" %}
*Adjusts*: adjusts the team processes, listening to feedback and guiding the team through the changes

* Receives general direction on routine work and newer assignments
* Adept at acknowledging and receiving feedback, and applying to improve work
* Keeps team informed of progress of deliverables
* Able to debate options, gather different perspective, and make recommendations
* Asks for input and incorporates ideas and solutions from others
* Demonstrates research and good judgement when choosing problem solving approaches
* Set personal priorities and work plan, while integrating dependencies on others' work
* Balances short term gains and long term benefit
* Contributes to improvements of engineering best practices ([Git workflow](https://app.gitbook.com/@redivis/s/eng/devops/git-rules), [code style](https://app.gitbook.com/@redivis/s/eng/devops/styleguide), [frontend architecture](https://app.gitbook.com/@redivis/s/internal/frontend/architecture))
* Provides feedback that focuses on the business impact of the behavior
* Iteratively works towards results on cross-team projects without over-analysis
  {% endtab %}

{% tab title="Influence (4)" %}
*Company*: makes an impact on the whole tech organization

* Operates with peers across the team, with awareness of influence of team's work within the company
* Strong focus on building productive relationships across team members, and regularly engages with other teams
* Identifies situations where collaboration between teams will yield good results.
  {% endtab %}

{% tab title="Diagram" %}
![](/files/-ME4vlvZlCIGG58Qcrb9)
{% endtab %}
{% endtabs %}

### Distinguished frontend engineer

{% tabs %}
{% tab title="Technology (5)" %}
*Creates*: designs and creates new technologies that are widely used either by internal or external teams

* Expert in Javascript/HTML/CSS, React, Redux, additional open-source libraries
* 12-15 years experience in web development
* Develops complete designs that satisfy design and engineering requirements
* Consistently delivers high quality work, on time, independently or as part of team
  {% endtab %}

{% tab title="System (5)" %}
*Leads*: leads the technical excellence of the system and creates plans to mitigate outages

* Leads projects with larger scope, demonstrating ownership of complex pieces, especially those that require collaboration with other teams.
* Specializes in multiple components or modules and understands dependencies between modules
* Debugs and resolves simple and complex issues unassisted
* Able to work on multiple projects with different scopes
* Writes clear documentation
* Considers diagnosibility, portability, reliability, maintainibility of features
* Proactively researches and learns new technical areas
* Strong working knowledge of backend systems; able to design and build with whole stack in mind.
* Chooses work that is appropriate to their level and works with the Engineering Manager to assign work to other members of the team
  {% endtab %}

{% tab title="People (3)" %}
*Mentors*: mentors others to accelerate their career-growth and encourages them to participate

* Proactive information sharing across teams, engagement in team meetings
* Builds relationships focused on collaboration, to enable productivity in teammates
* Works with manager to articulate needs and goals
* Excellent written and verbal communication
* Resolves conflicts respectfully and in a timely manner
* Open to diverse perspectives and ways of working
* Shares recognition of work across team, positively reinforces others' contributions
* Facilitate problem solving and work planning
* Considers others' schedules and priorities while managing own timeline
* Represents their team, and considers the impact to the team, when in conversations with others.
  {% endtab %}

{% tab title="Process (4)" %}
*Adjusts*: adjusts the team processes, listening to feedback and guiding the team through the changes

* Receives general direction on routine work and newer assignments
* Adept at acknowledging and receiving feedback, and applying to improve work
* Keeps team informed of progress of deliverables
* Able to debate options, gather different perspective, and make recommendations
* Asks for input and incorporates ideas and solutions from others
* Demonstrates research and good judgement when choosing problem solving approaches
* Set personal priorities and work plan, while integrating dependencies on others' work
* Balances short term gains and long term benefit
* Contributes to improvements of engineering best practices ([Git workflow](https://app.gitbook.com/@redivis/s/eng/devops/git-rules), [code style](https://app.gitbook.com/@redivis/s/eng/devops/styleguide), [frontend architecture](https://app.gitbook.com/@redivis/s/internal/frontend/architecture))
* Provides feedback that focuses on the business impact of the behavior
* Iteratively works towards results on cross-team projects without over-analysis
  {% endtab %}

{% tab title="Influence (5)" %}
*Community*: makes an impact on the tech community

* Operates with peers across the team, with awareness of influence of team's work within the department
* Strong focus on building productive relationships across team members, and regularly engages with other teams
* Identifies situations where collaboration between teams will yield good results.
* Public presence; conference/open-source contributions
  {% endtab %}

{% tab title="Diagram" %}
![](/files/-ME4vpIW9eGpDfxgePxn)
{% endtab %}
{% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://handbook.redivis.com/careers/engineering/frontend-engineer.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
