aboutsummaryrefslogtreecommitdiff
path: root/en/setup/start/roles.html
blob: b420be2f2a3fbacb37d975772b2d4404feb0577a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
<html devsite>
  <head>
    <title>Project Roles</title>
    <meta name="project_path" value="/_project.yaml" />
    <meta name="book_path" value="/_book.yaml" />
  </head>
  <body>
  <!--
      Copyright 2017 The Android Open Source Project

      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
      You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
  -->


<p>
  The Android Open Source Project (AOSP) includes individuals working in a
  variety of roles. Google is responsible for Android product management
  and the engineering process for the core framework and platform; however,
  the project considers contributions from any source, not just Google. This
  page describes the kinds of roles that interested parties can take on.
</p>
<p>
  Anyone who is interested in exploring and contributing to Android can use the
  AOSP resources. Anyone can join the mailing lists, ask questions, contribute
  patches, report bugs, look at submitted patches, and use the tools. To get
  started with the Android code, see
  <a href="../contribute/index.html">Contributing</a>.
</p>

<h2 id="contributor">Contributor</h2>
<p>
  "Contributors" are those making contributions to the AOSP source code,
  including both employees of Google or other companies, as well as individual
  developers who are contributing to Android on their own behalf. There is no
  distinction between contributors who are employed by Google and those who are
  not; all engineers use the same tools (git, repo, and gerrit), follow the same
  code review process, and are subject to the same requirements on code style
  and so on.
</p>

<h2 id="developer">Developer</h2>
<p>
  "Developers" are engineers writing applications that run on Android
  devices. There is often little difference in skillset between a developer
  and a contributor. But AOSP uses "developer" to distinguish between
  engineers using the platform and those contributing to it. Developers
  (along with users) are the "customers" of the platform the contributors
  create. As such, we talk about developers a lot, though this isn't technically
  a separate role in the AOSP per se.
</p>

<h2 id="verifier">Verifier</h2>
<p>
  "Verifiers" are responsible for testing change requests. After individuals
  have submitted a significant amount of high-quality code to the project, the
  project leads might invite them to become verifiers.
</p>
<aside class="note"><strong>Note:</strong> At this time, verifiers act similarly
to approvers.</aside>

<h2 id="approver">Approver</h2>
<p>
  "Approvers" are experienced members of the project who have demonstrated their
  design skills and have made significant technical contributions to the
  project. In the code-review process, an approver decides whether to include or
  exclude a change. Project leads (who are typically employed by Google) choose
  the approvers, sometimes promoting to this position verifiers who have
  demonstrated their expertise within a specific project.
</p>

<h2 id="project-leads">Project lead</h2>
<p>
  Android consists of a number of sub-projects; you can see these in the git
  repository as individual .git files. "Project leads" are senior contributors
  who oversee the engineering for individual Android projects. Typically these
  project leads are Google employees. A project lead for an individual project
  is responsible for the following:
</p>
<ul>
  <li>
    Lead all technical aspects of the project, including the project roadmap,
    development, release cycles, versioning, and quality assurance (QA).
  <li>
    Ensure the project is tested by QA in time for scheduled Android platform
    releases.
  </li>
  <li>
    Designate Verifiers and Approvers for submitted patches.
  </li>
  <li>
    Be fair and unbiased while reviewing changes. Accept or reject patches
    based on technical merit and alignment with the Android strategy.
  </li>
  <li>
    Review changes in a timely manner and make best efforts to communicate
    when changes are not accepted.</p>
  </li>
  <li>
    Optionally maintain a web site for the project for information and
    documents specific to the project.
  </li>
  <li>
    Act as a facilitator in resolving technical conflicts.
  </li>
  <li>
    Be a public face for the project and the go-to person for questions
    related to the project.
  </li>
</ul>

  </body>
</html>