Software Engineer
CurrentAs a full stack software engineer, I worked on data processing microservice applications written in Golang to parse and transform data. These apps are dockerized and deployed into a Kubernetes cluster. RabbitMQ was used to pass messages down the data pipeline for further processing. I created golang cronjob applications to pull data artifacts needed by the rest of the cluster. Jobs would store state information in CrateDB and artifacts in S3 buckets.As a full stack software engineer, I created my own application with a custom Javascript front end and Elastic Search back end for data generation to help with testing ETL processes for the project. RESTful endpoints and the web application were served up using Golang. Test data as well as the configs that drive the layout of the web application were dynamically generated based on data stored in the Elastic Search backend.As a full stack software engineer, my team successfully created a proof of concept application for curated data work flows using Golang for services and ingest, Elastic Search for data storage/discovery, and a custom Javascript UI for end user interaction. I was a key contributor on this team working on all areas of the project. I developed key parts of UI allowing users to interact with a map to discover data via Elastic Search geo queries. This involved a tile map server and custom JavaScript code with open source plugin libraries. Custom user alerting was developed based on ingest processes triggering user added criteria stored in Elastic Search. Custom Golang code in coordination with Elastic Search query templates allowed for access control filters to be executed at search time per a user’s credentials. ETL code in Golang deployed to production system to allow for automated data flow from source system to target system for knowledge capture.Technologies utilized include Golang, Javascript, Elasticsearch, Kibana, RabbitMQ, IntelliJ IDE, Git, Gitlab CI, and CentOS Linux.