Personal details

Michael M. - Remote back-end developer

Michael M.

Timezone: Pacific Time (US & Canada) (UTC-7)

Summary

I've been doing Java programming professionally since 1997, with my first job at an online internet gaming startup. Since then, I have worked across different industries and have earned respect as someone who intimately understands how to write maintainable, scalable, and performant code. Besides programming, my other big passion is composing music. I am interested in the burgeoning field of artificial creativity and in developing tools that would allow us to force-multiply our natural creativity and intuitions.

Work Experience

Sofware Architect
Wirefree Thought LLC | Jan 2004 - Present
MongoDB
Angular
Docker
Google Cloud Platform
Spring Boot
Microservices
Vue.js
● Currently developing API to perform anomaly detection on time-series data using an HTM AI algorithm. HTM – or Hierarchical Temporal Memory – is a learning algorithm developed by Numenta (http://numenta.com) from on-going research on the mechanism of biological intelligence. ● Developed GeoDB (http://geodb-cities-api.wirefreethought.com), a subscription-based publicly available REST service to expose and query worldwide city/region/country toponym data in multiple languages. ● Implemented a Spring Boot micro-service to preload all city data into memory, as well as to update that in-memory data on a regular cron schedule. Used external Mongo cloud-based instance as source-of-truth. ● Implemented a Java-based ETL process to download Geonames and Wikidata, merge the two data streams together, throw out bad data, determine the DB diff, then update MongoDB appropriately. Run on a Linux cron schedule. ● Implemented a Dev portal site to document usage as well as provide a live demo, using a combination of Angular and VueJS. ● Integrated with RapidAPI to support paid subscriptions. ● Deployed the service to a Google GCP Kubernetes cluster, with appropriate IP whitelisting to restrict access to RapidAPI users. ● Technologies: Docker, AWS (Route 53, S3), GCP (Kubernetes), MongoDB, Spring Boot, Angular, Vue ● Supported clients in the healthcare, media, legal, and defense industries as detailed below.
Software Consultant
Cisco Systems / Synamedia | Jul 2013 - Nov 2020
MongoDB
Oracle
Redis
Spring Boot
Spring Integration
Spoon
RESTful API
- Developed tools to enhance development process workflow, including custom code-analysis reports. - Implemented tool to generate HTML document that describes all possible error codes returned per micro-service endpoint. - Implemented custom Maven plugin to determine the effective configuration of each micro-service in a given environment. - Developed framework-level code to support cross-cutting concerns of business-level micro services. - Implemented a way to replace Java hard-coded error-message literals and codes with externalized error templates. - Replaced Java error-handling logic with exception-less approach in order to improve performance. This allowed returning a result payload with one or more errors. - Developed Java asynchronous result processing library backed by Redis queues. - Developed Spring-Boot micro-services, responsible for provisioning, updating, and querying user accounts, including basic account and VOD subscription info. - Developed and maintained an access-token service used by other micro-services to authorize access to specific endpoints. - Assisted in customizing VOD systems for Cisco clients. - Developed custom ESB components and REST web-services as part of content workflow. Technologies: Docker, Jenkins, Kubernetes, Mockito, MongoDB, Oracle, Redis, Spoon, Spring, Spring Boot, Spring Integration