- Keep Learning Everyday - learn fundamentals and use
tools with long shelf-life
- Developing - Error Handling In Oneview
- Documentation
- add order of operation (inspired by Network
Protocol)
- order is not obvious to derive from reading a bunch of
functions/methods
- API Design
- GraphQL API Design, 3 options -> consider using
Enum
- REST API Design, see my own
Github REST API for Gists
- Graphene
- use
nonnull
and required=True
- Django
- use foreign key when I use
xxx_id
and xxx
is an existing model
- when adding constraints, also add DB data cleaning migrations
- use
select_related
at first resolver to speed up
further model property access based on GraphQL query to reduce total
amount of sql call and thus improve performance
- use Celery when a job makes sense to be done in the
background
- Curo/Oneview Gotcha
- inactive curo entities aren’t synced to oneview by default, because
validate_state_code=True
by default
- inactive curo entites / soft deleted oneview model entities aren’t
return from oneview ORM by default, need to use
xx_deleted
instead
- Work
- track tickets raised in Product & Dev Chat in confluence
- Production deployment checklist
- see if secrets and associate aws IAM policies, service are setup in
prod
- read each migration files to understand the risk of this
deployment