> 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 %}
