Git Product home page Git Product logo

engineering-playbook's Introduction

What is Engineering at Andela?


The Technology Department is the engine of scale at Andela with a strategic focus on capturing data, putting things into systems and increasing productivity.

The Engineering Team at Andela drives the implementation and delivery of improvements to that engine, and focuses on delivering solutions faster and in a scalable way.

The Apprenticeship Program, owned by the Talent Development Department, is a full time, 3 month program where D0B Fellows (who have successfully completed Simulations) learn through building real products for real end users on internal or external teams. Find more about the Apprenticeship Program here.

The Apprenticeship Engineering Team at Andela aims to provide meaningful and real work experience opportunities for Andela apprentices (D0Bs) while delivering technical solutions that improve our in-house processes and workflows.

Contributing

Issues

Issues are always very welcome - after all, they are a big part of making our engineering processes better. Please be sure to follow the issue template.

Pull requests

We're glad to get pull request if anything is missing or something is buggy. However, there are a couple of things you can do to make life easier for the maintainers:

  • Explain the issue that your PR is solving - or link to an existing issue
  • Follow the repository structure, and new sections in the corresponding folders

Git Conventions Make sure you adhere to our convention for your commits and PR. The following is how we categorize the commits/work:

  • Feature - a new guideline we've added (Predix, feat:)
  • Fix - some corrections, something that was overlooked but not a new change in standards, that will be a feature too eg. typo, etc (Prefix, fix:)
  • Chore - I think they will be rare here but could be something like formatting, re-arranging content, etc. (Prefix, chore:)

Releases

This is a living document, therefore there will be continuous improvements made on it from time to time, both major and minor. Here are some of the guidelines on how to make releases for this document.

How to Release

  • Create release notes as per the guide here, you can see previous releases here.
  • See release template here.
  • Versioning: our versioning will following the Semantic Versioning convention:
    Given a version number MAJOR.MINOR.PATCH, increment the:
    
    MAJOR version when you make incompatible API changes,
    MINOR version when you add functionality in a backwards-compatible manner, and
    PATCH version when you make backwards-compatible bug fixes.
    
  • Once the release note is created, these changes are supposed to be communicated to the teams via the major communication channels: Email (list) and Slack.

When to Release

  • The recommended frequency for releases is quarterly, but this is not cast in stone.

engineering-playbook's People

Contributors

andela-anandaa avatar bigzoo avatar codrex avatar dariye avatar dijiadeyemo avatar dokwufulueze avatar eltronix avatar jidesakin avatar kenjaa avatar kipropbrian avatar layodi avatar makinwab avatar samdasoxide avatar scotterc avatar segedy01 avatar stephen-njoroge avatar thedancercodes avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

krasivaya

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.