# Engineering

To create the engineering career path, we looked at the different stages in the lifecycle of a feature. We felt that this was a much better approach to outline all the responsibilities and areas of impact for our engineering team than just the company's values.

## Architect

### Idea

#### Basic

* Understand requirements shared by the team

#### Intermediate

* Work with business teams to prioritise the right features
* Refine requirements so we are building the right features for both existing and future customers

#### Senior

* Work with business teams to define feature areas
* Suggest new areas based on customer knowledge

### User experience

#### Basic

* Consider all user touch points and areas of impact
* Ask the right questions to understand what has to be built

#### Intermediate

* Improve the user experience through discussions

#### Senior

* Define the user experience flow for large feature areas and products

### Technical architecture

#### Basic

* Think about what is needed to build this capability
* Document the technical architecture
* Get feedback from other team members

#### Intermediate

* Review architecture of junior team members
* Find elegant solutions to complex problems
* Reduce complexity and promote reuse

#### Senior

* Be comfortable in architecting large systems and products
* Use the right tech stacks or SaaS solutions for a quick and future-proof solution

## Build

### Development

#### Basic

* Build features and fix bugs following standard coding practices

#### Intermediate

* Identify ways to reuse code and create components so we add only what is needed
* Build features faster with cleaner code

#### Advanced

* Take on large complex projects and build them elegantly

### Feedback

#### Basic

* Share regular progress with product and business teams
* Make changes as needed based on the feedback

#### Intermediate

* Do a demo with relevant teams for early feedback
* Share previews with customers for their feedback

#### Advanced

* Do detailed customer interactions to identify issues and opportunities before extensive development

### Testing

#### Basic

* Add or update automated tests for the feature
* Ensure feature and adjacent areas are tested thoroughly

#### Intermediate

* Create a thorough test plan for the feature

#### Advanced

* Create a testing framework that continuously tests and identifies problems before they happen

## Deploy

### Deployment

#### Basic

* Work with the team to deploy the feature on time

#### Intermediate

* Create a deployment and migration plan for complex features
* Collaborate with business teams to identify the right time and approach to deployment

#### Advanced

* Orchestrate the roll-out of complex and interconnected systems
* Ensure there is no downtime, data loss, or other negative impact from any deployment

### Communication

#### Basic

* Inform relevant teams about the changes with video and screenshots

#### Intermediate

* Work with business teams to communicate benefits to existing and potential customers
* Update documentation and public references as needed
* Update training and on-boarding material

#### Advanced

* Create a sense of excitement about new capabilities and improvements within the company and with customers
* Conduct online and offline sessions to ensure customers are aware of the features and use them the right way

### Validation

#### Basic

* Add relevant metrics and create dashboards

#### Intermediate

* Review metrics regularly to see if features are used well
* Get regular feedback from business teams about the usability and effectiveness of feature

#### Advanced

* Spot patterns of poor or excellent usability from metrics
* Interact regularly with customers to understand how our products can be improved


---

# Agent Instructions: 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:

```
GET https://culture.rocketium.com/career-paths/by-team/engineering.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
