Feb 4 2020

Software Development Checklist

During the summer, our team usually hires an intern. We find that the interns we hire are more than capable with the technical requirements but usually need some help on process. In order to help new team members adapt our process we’ve developed a number of useful checklists of some best practices. Here are some useful checklist to go through when working on new features.

Ticket Checklist

  • Add clear and concise title and description
  • Add reproducible steps
    • Use realistic sample data
  • Add specific acceptance criteria
  • Add related tickets

Code Checklist

  • Create your own feature branch
  • Check code into your branch often
  • Merge from master often
  • Run test suites on your own branch
  • Add and update test cases
  • And and update wiki documentation
  • Add comments to ticket

New Project Checklist

  • Source
    • Git Repository
    • Dependency Management
      • Maven
    • readme.md
  • Wiki documentation
    • Design Diagram
    • API Documentation
    • Common Configuration
    • AWS Permissions
    • Technical Specifications
      • Ports
      • Hardware
    • Sample log output
    • Sample Splunk queries
  • Splunk friendly logs
    • Splunk Dashboards
    • Splunk Alerts
  • Test Cases
    • JUnit
  • Release Management
    • Bamboo Plan
    • Ansible Playbook
    • Package
      • Docker Image
      • RPM Package

Sep 25 2019

Oracle OpenWorld 2019 Overview

The following is a short list of tools, libraries, and projects that I found interesting at Oracle OpenWorld 2019.

  • Oracle APEX – Rapid Application Development framework built on top of Oracle’s database.  With little code, build CRUD application around database tables or even excel documents.
  • Oracle Jet – Oracle’s JavaScript Extension Toolkit (JET) for building mobile and desktop web applications.
  • WeaveWorks Sock Shop – Microservice sample app, like Java Pet Store.
  • Micronaut – Full-stack polyglot framework for building microservice and serverless applications.
  • Helidon – Collection of Java libraries for developing microservices.
  • JHipster – Generate, develop, and deploy Spring Boot + Angular/React/Veue web applications and microservices
  • OpenAPI – API description format for REST APIs. Formerly known as Swagger, used to help to design, build, document, and consume REST APIs.
  • Moby Project – Open framework to assemble specialized container systems.
  • Eclipse Vert.x – Reactive tool-kit
  • Eclipse Theia – Cloud IDE platform, runs on Docker
  • Eclipse Che – Kubernetes native IDE, allowing you to code, build, test and run applications exactly as they run on production from any machine.
  • Eclipse MicroProfile – Specification to define a microservice application platform that is portable across multiple runtimes and vendors.
  • Eclipse CodeWind – Container support in Eclipse IDE, Eclipse Che, and VS Code.
  • Docker Kitematic – GUI application to run Docker containers.