1*61c4878aSAndroid Build Coastguard Worker.. _docs-mission: 2*61c4878aSAndroid Build Coastguard Worker 3*61c4878aSAndroid Build Coastguard Worker====================== 4*61c4878aSAndroid Build Coastguard WorkerMission & philosophies 5*61c4878aSAndroid Build Coastguard Worker====================== 6*61c4878aSAndroid Build Coastguard Worker 7*61c4878aSAndroid Build Coastguard Worker----------- 8*61c4878aSAndroid Build Coastguard WorkerOur Mission 9*61c4878aSAndroid Build Coastguard Worker----------- 10*61c4878aSAndroid Build Coastguard Worker.. pull-quote:: 11*61c4878aSAndroid Build Coastguard Worker 12*61c4878aSAndroid Build Coastguard Worker Create both *software* and *process* foundations for *sustained*, 13*61c4878aSAndroid Build Coastguard Worker *robust*, and *rapid* *embedded* product development with *large teams*. 14*61c4878aSAndroid Build Coastguard Worker 15*61c4878aSAndroid Build Coastguard WorkerEach component of our mission has additional meaning: 16*61c4878aSAndroid Build Coastguard Worker 17*61c4878aSAndroid Build Coastguard Worker- **Software** - Our modular components and surrounding tooling are our 18*61c4878aSAndroid Build Coastguard Worker primary deliverable. The software is the product of our philosophies. 19*61c4878aSAndroid Build Coastguard Worker- **Process** - Developing robust software processes is hard, and not something 20*61c4878aSAndroid Build Coastguard Worker all teams have time for. Our mission is to create reusable processes that can 21*61c4878aSAndroid Build Coastguard Worker save time and increase team happiness. Our approach is to offer tooling and 22*61c4878aSAndroid Build Coastguard Worker standards. For example, our integrated code formatting, module directory 23*61c4878aSAndroid Build Coastguard Worker structure, style guide, test processes, and more are all designed for reuse. 24*61c4878aSAndroid Build Coastguard Worker- **Sustained** - Products often live a long time or are part of a series of 25*61c4878aSAndroid Build Coastguard Worker related products; and over time the requirements change. Our mission is to 26*61c4878aSAndroid Build Coastguard Worker make these sustained development situations easier. Our approach is to create 27*61c4878aSAndroid Build Coastguard Worker flexible and reusable foundations to gracefully handle changes. For example, 28*61c4878aSAndroid Build Coastguard Worker our porting abstractions make switching a microcontroller vendor easier. 29*61c4878aSAndroid Build Coastguard Worker- **Robust** - Creating robust products is hard, yet important for finding 30*61c4878aSAndroid Build Coastguard Worker market and product success. Our mission is to assist teams in creating robust 31*61c4878aSAndroid Build Coastguard Worker products. Our approach is to: 32*61c4878aSAndroid Build Coastguard Worker 33*61c4878aSAndroid Build Coastguard Worker #. Invest heavily in software reliability tooling and processes (unit testing, 34*61c4878aSAndroid Build Coastguard Worker sanitizing, formatting, etc) 35*61c4878aSAndroid Build Coastguard Worker #. Comprehensively apply said tooling and processes to Pigweed, making Pigweed 36*61c4878aSAndroid Build Coastguard Worker a robust foundation 37*61c4878aSAndroid Build Coastguard Worker #. Make said tooling available for downstream use, so teams can ensure code 38*61c4878aSAndroid Build Coastguard Worker they write is robust 39*61c4878aSAndroid Build Coastguard Worker 40*61c4878aSAndroid Build Coastguard Worker- **Rapid** - Creating products quickly is critical in today's market. Our 41*61c4878aSAndroid Build Coastguard Worker mission is to make shipping products faster with Pigweed. Our approach is to 42*61c4878aSAndroid Build Coastguard Worker accelerate product development by offering reliable foundations (less bug 43*61c4878aSAndroid Build Coastguard Worker hunting), having great onboarding tooling (low engineer churn/setup), offering 44*61c4878aSAndroid Build Coastguard Worker modules solving common but hard problems (RPC), etc. 45*61c4878aSAndroid Build Coastguard Worker- **Embedded** - Our mission is to support software embedded in products such as 46*61c4878aSAndroid Build Coastguard Worker earbuds, watches, phones, thermostats, satellites, cars, drones, and related. 47*61c4878aSAndroid Build Coastguard Worker- **Large teams** - Developing software with large teams in the embedded space 48*61c4878aSAndroid Build Coastguard Worker is increasingly frequent due to more capable embedded processors. 49*61c4878aSAndroid Build Coastguard Worker Traditionally, teams were 1-5 people, but are increasingly much larger 50*61c4878aSAndroid Build Coastguard Worker (50-200 person) teams. Our mission is to make developing larger products with 51*61c4878aSAndroid Build Coastguard Worker correspondingly larger teams easier and faster, with an eye to support rapid 52*61c4878aSAndroid Build Coastguard Worker prototyping where there is a chance to scale from an idea to production. Our 53*61c4878aSAndroid Build Coastguard Worker approach is the investment in common abstractions, common practices, common 54*61c4878aSAndroid Build Coastguard Worker standards, tooling around those standards, and a focus on automation and 55*61c4878aSAndroid Build Coastguard Worker repeatability. 56