Giter VIP home page Giter VIP logo

engineering-practices's Introduction

Engineering Practices at Open Government Products

This directory contains the engineering practices that are observed at the Open Government Products division of the Singapore Government.

This repository is intended to be a living, breathing document that evolves as the organisation grows. All OGP engineers are welcome to make contributions or propose changes, by filing a pull request using the Request For Comment (RFC) template available in this repository.

Practices are currently in place for the following areas:

Developer Environment

Source Control

Coding

  • Backend

    • RESTful API routing organisation
    • Using Object Relational Mappers (ORMs)
  • Frontend

    • Template Screens
    • State Management
  • Testing

    • Unit
    • Integration
    • End-to-End
  • Libraries and tools

Monitoring and Incident Response

Security

Project maintenance

Useful starter code templates

Marketing and Engagement

  • Facebook
  • Twitter
  • Zendesk

Policy exemptions

See here.

engineering-practices's People

Contributors

foochifa avatar jeantanzj avatar liangyuanruo avatar lonerifle avatar pallani avatar the-robot avatar timotheeg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

engineering-practices's Issues

Add guidelines for project maintainerships

Topics to describes:

  • Updating dependencies
  • Monitoring and patching security vulnerabilities
  • For fork repos, keeping up with upstream, try to have changes adopted upstream
  • Continuous improvement on logging, monitoring and alerting

RFCs and ADRs

Write guidelines to describe how new ideas or practices with a broad impact should be discussed and adopted and documented:

Request For Comments (RFC)

  • Describe idea proposed
  • Present POCs / MVPs / experimentation with results
  • Should be in a format that makes discussions very easy (github PRs may not be the best format for this)
  • Described other approaches that have been considered
  • Eventually document decision

Architecture Decision Record (ADR)

  • Describe a particular decision taken and rational
  • Describe Impact to organisation and teams
  • Ideally links to an RFC so people may get more contextual information should they wish

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.