Casey Smith
csmith932
Recent Tech Decisions
83 points

Following

  • npm

    csmith932 PCM Stack


    Package manager; dependency for Bower and Gulp in build pipeline.

  • Spring

    csmith932 PCM Stack


    Configuration for ActiveMQ message broker and Apache Camel routes in data feed ingestion module.

  • Google App Engine

    csmith932 PCM Stack


    PaaS for back-end components, including external data ingestion APIs, front-end web service APIs, hosting of static front-end application assets, back-end data processing pipeline microservices, APIs to storage infrastructure (Cloud SQL and Memcached), and data processing pipeline task queues and cron jobs. Task queue fan-out and auto-scaling of back-end microservice instances provide parallelism for high velocity data processing.

  • Google Cloud SQL

    csmith932 PCM Stack


    Back-end datastore.

  • Jenkins

    csmith932 PCM Stack


    Continuous integration and deployment.

  • Git

    csmith932 PCM Stack


    Source code repository.

  • GitHub

    csmith932 PCM Stack


    Issue tracking.

  • Apache Maven

    csmith932 PCM Stack


    Package management and build automation for the back-end, plus integration of front-end build automation using Gulp/Bower/NPM.

  • Java

    csmith932 PCM Stack


    Back-end application logic.

  • JavaScript

    csmith932 PCM Stack


    Front-end application logic.

  • Polymer

    csmith932 PCM Stack


    Componentize the front-end web client.

  • D3.js

    csmith932 PCM Stack


    Bind data models to visual layouts in front-end web client.

  • Google Compute Engine

    csmith932 PCM Stack


    Infrastructure for Google App Engine, Google Cloud Endpoints, Memcached, and Google Cloud SQL components, as well as Git repository and Jenkins CI server.

  • HTML5

    csmith932 PCM Stack


    Foundation for front-end web client.

  • Memcached

    csmith932 PCM Stack


    Distributed cache exposed through Google App Engine APIs; use to stage fresh data (incoming and recently processed) for faster access in data processing pipeline.

  • Bower

    csmith932 PCM Stack


    Package manager for front-end JavaScript dependencies; part of the overall build pipeline.

  • gulp

    csmith932 PCM Stack


    Build automation for front-end web client.

  • Eclipse

    csmith932 PCM Stack


    Develop and debug Java code using standard Eclipse distribution. No special plugins; standard Maven and Git integration.

  • ActiveMQ

    csmith932 PCM Stack


    Remote broker and local client for incoming data feeds. Local broker for republishing data feeds to other systems.

  • Flux

    csmith932 PCM Stack


    "Idiot proof MVC" using transactional pub/sub between models, views, and controllers to establish reliable one-way data flow. Combines well with Polymer web components to create a modular, loosely coupled front-end architecture.