-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add engineering OKRs for 2019Q1 #109
Changes from all commits
127fdf7
bb9becb
a9dfcb0
487ed1d
e9e1437
b6c5080
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,19 +2,134 @@ | |
|
||
## Bring 'Code as Data' to market with enterprises | ||
|
||
### Enable engine integration with 3rd parties | ||
|
||
- [ ] gitbase-spark-connector SQL 3rd party interop (Spark Thrift Server) [P0][DP] | ||
|
||
### Increase number of algorithms we can run | ||
|
||
- [ ] Support for git diff tree [P0][DP] | ||
- [ ] Support for diff [P0][DP] | ||
- [ ] Research options for UDFs (gitbase or gitbase-spark-connector) [P1][DP] | ||
- [ ] Research options for gitbase plugins [P2][DP] | ||
- [ ] Gitbase support for low-level git UDFs [P2][DP] | ||
|
||
### Increase variety of data we can analyze | ||
|
||
- [ ] Provide specs for external data sources [P1][DP][PRODUCT] | ||
- [ ] Provide specs to expose dependency analysis [P2][LA] | ||
|
||
### Analyze current performance limits and improve them | ||
|
||
- [ ] Gitbase to expose only reachable objects [P0][DP] | ||
- [ ] Parallelized index creation [P1][DP] | ||
- [ ] Parallelized queries inside of a repository [P2][DP] | ||
- [ ] Make performance dashboard available to product team [P1][DP][PRODUCT] | ||
- [ ] Provide specs for distributed version (gitbase-spark-connector-enterprise) [P2][DP][INFRA] | ||
|
||
### Make enterprise friendly | ||
|
||
- [ ] gitbase-web SSO and RBAC [P1][APPS][PRODUCT] | ||
- [ ] bblfsh-web SSO and RBAC [P1][APPS][PRODUCT] | ||
- [ ] document gitbase audit logs and RBAC [P1][DP] | ||
|
||
### Simplify usage | ||
|
||
- [ ] Provide installers [P2][APPS][PRODUCT] | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. installers of what? How is it different from engine that is an "installer" for most of src-d projects already? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I had the same doubt. Needs clarification. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Needs product discussion. This was initially meant to be apt-get and homebrew, but we still need to see if this would actually make things easier or not. |
||
- [ ] Provide specs for new Engine architecture (stand-alone server + config file) [PRODUCT] | ||
|
||
### Improve stability | ||
|
||
- [ ] Ensure gitbase works when dataset and indexes do not match [P0][DP] | ||
- [ ] Provide a single, default, performant and stable regex implementation for gitbase and enry [P2][DP][LA] | ||
- [ ] Stabilize Babelfish in production (support large-scale use from gitbase) and ML tasks [P0][LA] | ||
- [ ] Add engine cli integration tests [P0][APPS] | ||
|
||
### Online updates | ||
|
||
- [ ] Gitbase to support online updates [P1][DP] | ||
|
||
### Release necessary language support for enterprise | ||
|
||
- [ ] C# driver [P0][LA] | ||
|
||
### Get bblfsh ready for wide language support of our use cases | ||
|
||
- [ ] Make UAST v2 the standard interface for Babelfish [P0][LA] | ||
- [ ] Compact diffs of UAST trees [P1][LA] | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. One thing that isn't clear in this document are the dependencies between teams that arise from these objectives. (I'm adding this comment here because this one happens to affect LA, but there are others). I suppose some of that dependency information will probably fall out of the product planning cycle, but could we have the OKR document include some record of "shared" OKRs? E.g., we could record multiple teams, and/or assign numbers and say "required for 1.2.1" or something? |
||
- [ ] Plan for a language-independent style-analyzer (bblfsh-side support) [P2][LA] | ||
- [ ] Provide an efficient storage format for large UASTs collections [P3][LA] | ||
|
||
## Improve the 'Code as Data' individual user experience | ||
|
||
## Improve quality across all products | ||
|
||
- [ ] Conduct two empathy sessions for cross-team documentation and user experience improvements [P1][ENG] | ||
|
||
## Release a new version of PGA | ||
|
||
- [ ] Release a new version, updated, fixed, including #stars [P1][DR] | ||
|
||
## Bring 'Assisted Code Review' to developers in the open-source community | ||
|
||
### Improve current lookout analyzers | ||
|
||
- Style Analyzer in one more language (possibly Java) [P0][ML] | ||
- Release Typo Analyzer [P0][ML] | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
|
||
### Create new lookout analyzers | ||
|
||
- [ ] Analyzers for most common linters / traditional static tools [P?][APPS][PRODUCT] | ||
- [ ] Collect a structured dataset of diffs for best-practices-analyzer [P2][ML] | ||
- [ ] Research what ML team can deliver for best-practices-analyzer [P1][ML] | ||
|
||
### Lookout Platform | ||
|
||
- [ ] Collect GitHub reactions as feedback to comments [P1][APPS] | ||
- [ ] Provide metrics on usage [P0][APPS] | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. may we have info about which kind of metrics are meant here? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @smacker We need to meet together with @vmarkovtsev and @rporres to define this. We need to define how analyzers should expose custom metrics (e.g. such as metrics about models built by style-analyzer). |
||
- [ ] Live Demo Repository with all available analyzers set-up [P1][APPS][INFRA] | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
This is required to provide the rules blacklist feature in style-analyzer. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. material for the backlog at this point |
||
|
||
## Store the world's source code | ||
|
||
## Improve local-gpu cluster usability | ||
### Refactor to go-borges library, to reuse borges logic in other projects | ||
|
||
- [ ] Library for access to a collection of git repositories (go-borges) [P0][DR] | ||
- [ ] go-borges-based borges [P0][DR] | ||
- [ ] siva backend for go-borges [P1][DR] | ||
|
||
### Improve borges storage | ||
|
||
- [ ] Inspect storage efficiency (review siva usage, siva compaction, git gc, etc) [P1][DR] | ||
- [ ] Research distributed storage alternatives [P2][INFRA][DR] | ||
|
||
## Improve infrastructure | ||
|
||
### Release the production kubernetes pipeline cluster | ||
|
||
- [ ] Release of the production cluster [P0][INFRA] | ||
- [ ] Run rovers and borges on it [P0][INFRA] | ||
- [ ] Deploy services with HA: PostgreSQL, RabbitMQ, etcd [P0][INFRA] | ||
- [ ] Add monitoring to the pipeline (rovers, borges and associated services) [P0][INFRA] | ||
- [ ] Migrate staging cluster to the new deployment method [P0][INFRA] | ||
- [ ] Improve Helm Terraform Provider [P1][INFRA] | ||
- [ ] New staging cluster with latest Code as Data stack [P1][INFRA] | ||
|
||
### Improve local-gpu cluster usability | ||
|
||
- [ ] Migrate to the new ML cluster [P0][ML][INFRA] | ||
|
||
## Being a better company to work at | ||
|
||
## Advance MLonCode awareness | ||
|
||
- [ ] Publish the final id2vec model [P2][ML] | ||
|
||
## Hiring | ||
|
||
- Hiring: Test (1 Senior) [P0][TALENT] | ||
- Hiring: ML (1 Intern + 1 Senior) [P0][TALENT] | ||
- Hiring: Apps (1 Senior, 1 Lead) [P0][TALENT] | ||
- Hiring: LA (1 Senior + 1) [P0][TALENT] | ||
- Hiring: DR (1 Senior) [P1][TALENT] | ||
- Hiring: DP (1 Senior) [P1][TALENT] | ||
- Hiring: Infra (1 Senior) [P1][TALENT] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since the section is "Enable engine integration with 3rd parties", will this be expected to be available in engine?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not now or not yet. Probably in next quarter, but still requires product discussions.