Project Management

Updated: 2018-11-28

Team Working Agreement

  • software development paradigm

    • waterfall vs agile
  • choice of source control

    • Git? SVN?
    • GitHub? BitBucket?
    • Private vs Public
    • pull request or not
    • single master branch or multiple feature branches
    • merge vs rebase
  • top-level file structure

    • Components in separate repositories or as modules in one repository
    • Follow Maven convention?
    • Parent pom? Builder pom?
    • Maven modules or Git modules?
  • choice of language and ecosystem

    • Java vs Scala vs Python vs Ruby vs Javascript ...
  • Naming Conventions

    • camelCase? PascalCase? Underscore? Dash?
  • Coding Conventions

  • choice of unit test framework

    • TestNG vs JUnit
  • code review or not
  • choice of CI

    • public travis vs in-house Jenkins