Skip to content

Commit

Permalink
refs #148: The new section should be over now.
Browse files Browse the repository at this point in the history
  • Loading branch information
stickgrinder committed Oct 19, 2023
1 parent c726bbb commit 5867f83
Show file tree
Hide file tree
Showing 7 changed files with 66 additions and 28 deletions.
6 changes: 4 additions & 2 deletions content/organization/accountabilities.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ As you gain [seniority](/organization/operations#seniority-levels) and possibly

Project-related accountabilities are described in terms of their ownership, practical tasks and expected observable outputs.

The accent is on practices because these roles are ofter taken up by developers, engineers, designers and in general by colleagues with a technical expertise. Also, this model does not conflict with the shared and seniority-related accountabilites listed above.
The accent is on practices because these roles are often taken up by developers, engineers, designers and in general by colleagues with a technical expertise. Also, this model does not conflict with the shared and seniority-related accountabilites listed above.

Different models are available based on the delivery area.

Expand All @@ -71,7 +71,9 @@ Different models are available based on the delivery area.
* [Team Leader](/resources/projectroles-acc-team-leader)
* [Project Manager](/resources/projectroles-acc-project-manager)

Learn [how these roles collaborate and interact](/organization/operations#interactions-between-project-roles).
Whomever works on a project without being explicitely appointed any such roles, has the [Team Member](/resources/projectroles-acc-team-member) accountabilities.

Learn [how these roles collaborate and interact](/organization/operations#interactions-between-development-project-roles).

### Platform area

Expand Down
16 changes: 12 additions & 4 deletions content/organization/operations.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Each of these branches contains one or more teams focused on specific projects o
SparkFabrik has an almost flat organization, arranged around clear roles, each with its ownership and responsibilities.
Also, people grow in seniority and this grants them more authority on specific issues or in specific situations.

Every [operational area](/organization/operations) has its seniority levels, while project roles are common to every area, even if some may not be relevant or applicable.
Every [operational area](/organization/operations) has its seniority levels and project roles.

### Seniority Levels

Expand Down Expand Up @@ -70,10 +70,10 @@ Learn more about [each level's accountabilities](/organization/accountabilities#

### Project Roles

Depending on seniority, attitude, achievement, and personal inclinations, SparkFabrik may propose people take over one or more of the following roles on a project. Not all roles are accessible at all seniority levels and more junior employees should not expect to be assigned one.
Depending on seniority, attitude, achievements, and personal inclinations, SparkFabrik may propose people take over one or more of the following roles on a project. Not all roles are accessible at all seniority levels and more junior employees should not expect to be assigned one.
Being appointed a project role means **you earned the company's and teammates' trust**, you proved your **reliability** and you display a strong **customer orientation**.

These roles are not mutually exclusive, even if covering all at the same time is usually unfeasible, and not all projects need all of these roles to be clearly appointed.
These roles are not mutually exclusive - even if covering all at the same time is usually unfeasible - and not all projects need all of these roles to be clearly appointed.
To better understand the relation between seniority level and project roles in terms of professional growth, visit the section on [career advancement](/working-at-sparkfabrik/career-advancement).

#### Development area
Expand Down Expand Up @@ -114,6 +114,14 @@ In applying this clear information to your daily work, always keep in mind that
| Smoke-Testing e QA | R | I | R | A | | |
| Technical rebuilding | I | R | A | | | |

#### Platform area

`TO BE DONE`

#### Digital Strategy area

`TO BE DONE`

---

<small><a name="fn1">1</a>: For sake of clarity, read the table as follows: **Responsible**: who's practically performing the task or decision. **Accountable**: the _single_ person held responsible for the outcome (you can call them "owner"). **Consulted**: People that MUST be consulted for information or validation before completing the task or decision. **Informed**: People that should be kept in the loop about that task or decision.</small>
<small><a name="fn1">1</a>: For sake of clarity, read the table as follows: **Responsible**: who's practically performing the task or decision. **Accountable**: the _single_ person held responsible for the outcome (you can call them "owner"). **Consulted**: People that MUST be consulted for information or validation before completing the task or decision. **Informed**: People that must be kept in the loop about that task or decision.</small>
14 changes: 7 additions & 7 deletions content/resources/projectroles-acc-analyst.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
/*
Title: Ownsership - Analyst
Title: Ownership - Analyst
Description: Ownerships of an Analyst on SparkFabrik's projects
Sort: 200
*/

Analysts are great when it comes to mapping a domain, fathoming complexity and expressing it in a clear, rational, understandable form. Analysts may not always have a solution at hand but for sure they know when a need is fulfilled or a problem is solved. Analysts' skills make for great Product Owners.

Analysts are responsible for the functional analysis of products in progress on behalf of the customers. They define the requirements for its features and can contribute to the population of the work backlog. They are the individuals tasked with maintaining consistency between the product's functionalities and ensuring that the requirements are clear and well-described, ready to be worked on by the team.
Analysts are responsible for the functional analysis of products and services on behalf of the customers. They define the requirements for its features and contribute to populate the work backlog. They are tasked with maintaining consistency between product's functionalities and ensuring that the requirements are clear and well-described, ready to be worked on by the team.

They do not handle the technical direction of the project (thus, they do not evaluate individual implementations from a technical perspective) or the management of deadlines, budgets, and external priorities unrelated to the product.
They do not handle the technical direction of the project (thus, they do not evaluate individual implementations from a technical perspective) nor the management of deadlines, budgets, and external priorities unrelated to the product.

## Caveats

The analyst must maintain continuous involvement with the client and the project, much like the [Project Manager](/resources/projectroles-acc-project-manager). They cannot be assigned on an on-call basis as they are the owner of client request analysis and need continuity and full visibility to perform effectively.
The analyst must maintain continuous involvement with the client and the project, much like the [Project Manager](/resources/projectroles-acc-project-manager). They are not usually assigned on-call as they are the owner of client request analysis and need continuity and full visibility to perform effectively.

They must comprehensively analyze and manage client requests throughout the project's lifespan. This requires a sufficiently technical background to handle them independently and manage requirements even involving technical decisions, without necessarily making those decisions themselves.
They must comprehensively analyze and manage client requests throughout the project's lifespan. This requires a sufficient technical background to put forward proposals, without necessarily making technical decisions themselves, taking into account the impacts those have on the implementation.

## Ownership

Expand All @@ -28,11 +28,11 @@ They must comprehensively analyze and manage client requests throughout the proj
* Performs initial analysis and development of the functional technical document (with the [Project Manager](/resources/projectroles-acc-project-manager) and [Solution Architect](/resources/projectroles-acc-architect))
* Collaborates with the [Project Manager](/resources/projectroles-acc-project-manager) in drafting the project plan (roadmap)
* Leads functional requirements validation
* Definites the requirements (with the Client)
* Defines the requirements (with the Client)
* Drafts the issues in terms of functionality description, acceptance criteria, and validation scenarios
* Maintains requirements documentation

## Concrete outputs
## Tangible outputs

* Documents with pre-sale estimates
* Functional analysis documents (conceptual map, structure, etc.)
Expand Down
10 changes: 5 additions & 5 deletions content/resources/projectroles-acc-architect.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
/*
Title: Ownsership - Architect
Title: Ownership - Architect
Description: Ownerships of an Architect on SparkFabrik's projects
Sort: 210
*/

Architects describe the best possible solution to a framed problem. They are great decision makers, understand the long-term implications of technical choices, know how to quickly probe, understand and adapt and always grasp the big picture.
Architects describe the best possible solution to a framed problem. They are great decision makers, understand the long-term implications of technical choices, know how to swiftly probe, understand and adapt and always grasp the big picture.

The Solution Architect serves as the technical leader for a product. They are responsible for defining the solution's architecture, its dependencies, and the services it encompasses. They actively participate in development alongside the rest of the team, encouraging each member to proactively address problems based on their seniority.

The Solution Architect defines strategies to ensure the quality of product implementation, starting with adherence to established best practices already in use within the company. They seek validation from the CTO if they believe it is necessary to evolve or introduce new practices. They participate in internal calls and those with the client when specialized technical input is necessary or preferred.
The Solution Architect defines strategies to ensure the quality of product implementation, starting with adherence to best practices already established within the company. They seek validation from the CTO if they believe it is necessary to evolve or introduce new practices. They participate in internal calls and those with the client when specialized technical input is necessary or preferred.

## Caveats

Large projects may need specialized software architects for different areas (say, frontend and backend). Nonetheless, a single Solution Architect should be designated for each project to ensure coordinated choices, adherence to UDoD, and alignment with non-functional requirements.
Large projects may need specialized software architects for different areas (say, frontend and backend). Nonetheless, a single Solution Architect should be designated for each project to ensure coordinated choices, adherence to [Universal Definition of Done](/tools-and-policies/universal-dod), and alignment with non-functional requirements.

Small projects with limited technical complexity may not require a dedicated Solution Architect. In such cases, responsibilities can be delegated within the team, under the Team Leader's guidance.

Expand All @@ -34,7 +34,7 @@ Small projects with limited technical complexity may not require a dedicated Sol
* Conducts (delegating at their discretion) technical reviews of work (code-reviews, etc)
* Ensures the establishment of DevOps practices

## Concrete outputs
## Tangible outputs

* Technical documentation for project architecture and ADRs (Architecture Decision Records)
* Initial solution stub with the team
Expand Down
8 changes: 4 additions & 4 deletions content/resources/projectroles-acc-project-manager.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
/*
Title: Ownsership - Project Manager
Title: Ownership - Project Manager
Description: Ownerships of a Project Manager on SparkFabrik's projects
Sort: 230
*/

Managers make things work. They coach, measure, plan ahead, warn and ultimately support people to give their best, removing obstacles, and improving their processes and procedures. In SparkFabrik people are never managed -- work is. So managers govern but never rule.

The Project Manager maintains an overview of the project's progress, ensuring that the roadmap is understood, followed, and evolved in collaboration with the Client, when new information arises during the project's execution.
The Project Manager maintains an overview of the project's progress, ensuring that the roadmap is understood, followed, and evolved in collaboration with the Client - when new information arises during the project's execution.

They interact with the team as a coach and facilitator, by feat of their high-level perspective, working to eliminate impediments that could slow down productive processes or grind them to a halt. During crisis, if requested by the board or the team, they may need to enforce corrective actions, taking control of the project, taking an assertive stance, until ideal working conditions are restored.
They interact with the team as coaches and facilitators, by feat of their high-level perspective, working to eliminate impediments that could slow down productive processes or grind them to a halt. During crises, if required by the board or the team, they may need to enforce corrective actions, assuming control of the project and adopting an assertive stance until ideal working conditions are restored.

The Project Manager is responsible for managing progress, budgets, and other key indicators, reporting any program deviations to the board and the client, and maintaining an analytical eye on processes to suggest corrective actions and improvements. In particular, the PM monitors the team to address any discrepancies from contractual obligations, whether they are shortfalls or overages, and realigns the team as necessary.
Project Managers are responsible for progress, budgets, and other key indicators, report any program deviations to the board and the client, and maintain an analytical eye on processes to suggest corrective actions and improvements. In particular, they monitor the team to address any discrepancies from contractual obligations, whether they are shortfalls or overages, and bring this to their attention, so the team can reorganize around this information.

## Ownership

Expand Down
12 changes: 6 additions & 6 deletions content/resources/projectroles-acc-team-leader.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
Title: Ownsership - Team Leader
Title: Ownership - Team Leader
Description: Ownerships of a Team Leader on SparkFabrik's projects
Sort: 220
*/
Expand All @@ -8,7 +8,7 @@ Team Leaders excel at enabling teams, coordinating efforts, and ensuring project

They are responsible for the overall coordination of the teams, for directing the planning of single iterations so that they meet project milestones, for adhering to estimates, as well as for team motivation and morale, especially when they tend toward isolation.

They define the recurring events in the production flow (planning, review, retrospectives) in agreement with the [Project Managers](/resources/projectroles-acc-project-manager) and are accountable for implementing corrective actions identified during the retrospective phase.
They define the recurring events in the production flow (planning, review, retrospectives) in agreement with the [Project Managers](/resources/projectroles-acc-project-manager) and the Clients, when relevant, and are accountable for implementing corrective actions identified during the retrospectives.

They ensure that the technical project documentation is kept complete and relevant, even taking direct action in its preparation when required.

Expand All @@ -23,12 +23,12 @@ They ensure that the technical project documentation is kept complete and releva

## Practical tasks

* Makes themselves available to Solution Architects and the Team during estimation processes.
* Collaborates with the Project Manager in drafting the project plan (epics and milestones).
* Makes themselves available to [Solution Architects](/resources/projectroles-acc-architect) and the Team during estimation processes.
* Collaborates with the [Project Manager](/resources/projectroles-acc-project-manager) in drafting the project plan (epics and milestones).
* Leads detailed planning during iterations.
* Supports the Project Manager in meeting deadlines and delivering the content defined during the planning phase.
* Supports the [Project Manager](/resources/projectroles-acc-project-manager) in meeting deadlines and delivering the content defined during the planning phase.
* Supports presale estimates.
* Collaborates with the Analyst in drafting functional requirements and refining the project backlog.
* Collaborates with the [Analysts](/resources/projectroles-acc-analyst) in drafting functional requirements and refining the project backlog.
* Oversees those customer communications that are necessary for operations.

## Concrete outputs
Expand Down
28 changes: 28 additions & 0 deletions content/resources/projectroles-acc-team-member.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
/*
Title: Ownership - Team Member
Description: Ownerships of a team member on SparkFabrik's projects
Sort: 240
*/

Team Members are developers and designers who take in charge implementing the project's features, under the guidance of the [Team Leader](/resources/projectroles-acc-team-leader) and following what has been defined bu the [Solution Architect](/resources/projectroles-acc-architect).

## Caveats

The whole chain of decisions, and the [Project Manager](/resources/projectroles-acc-project-manager) should make every effort to ensure that the project team remains stable throughout the project's duration.
Frequent reassignments hinder the acquisition of essential project knowledge and undermine the identification of a shared goal, which is crucial for motivating and instilling a sense of responsibility towards the project's success.

## Ownership

* Respect of their own commitment
* Making the software work on all target environments
* Compliance with the Solution Architect's instructions

## Practical tasks

* Feature implementation
* Estimation of issues (with [Analysts](/resources/projectroles-acc-analyst) and/or [Solution Architects](/resources/projectroles-acc-architect))
* Population of technical To-Do lists for each issue (with [Solution Architects](/resources/projectroles-acc-architect))

## Concrete outputs

* Software compliant with functional requirements and technical instructions (including SparkFabrik's [Universal Definition of Done](/tools-and-policies/universal-dod))

0 comments on commit 5867f83

Please sign in to comment.