
Brett Adams
Verified Expert in Engineering
Software Developer
For the past twenty years, Brett has built his career primarily around using Python to build REST APIs, data pipelines, and desktop applications and JavaScript/TypeScript to build fully-featured web apps, hybrid mobile apps, React Native apps and APIs. Along the way, Brett has also worked in ClojureScript, Go, Java, Shell Scripts, 4D, and ColdFusion on a variety of platforms and projects.
Portfolio
Experience
Availability
Preferred Environment
Emacs, JavaScript, TypeScript, Python
The most amazing...
...thing I've done was to rewrite the Untappd mobile app and knowing it was successfully deployed to 1 million active users around the world.
Work Experience
Senior Full-stack Developer
EmbraerX | Beacon
- Ported an MVP app that used React and React Native-based app to a universal app using React Native Web to share the code between the native and web in a single codebase.
- Helped maintain and expand a GraphQL API written in Clojure.
- Created an asynchronous data pipeline using Python, AWS Lambda, and Amazon SQS to allow the API to push messages into the pipeline and, once finished processing, to have data pushed back into the API.
Freelance Senior Software Developer
University of Colorado Boulder
- Built a distributed data pipeline using Airflow, Python, and various AWS services, including ECS/Fargate, Lambda, Glue, and S3, and provisioned with Terraform. The pipeline was well-tested using Tox, Pytest, and Coverage.py.
- Created an anonymization framework for anonymizing confidential data using Pandas.
- Converted and modernized legacy SAS scripts into data transformations running in Spark.
- Developed a data API using the Serverless Framework and deployed it to AWS Lambda. The API was fully tested with Pytest and Tox.
- Helped support a React-based web app for managing data permissions and integrating it with Tableau.
Senior Software Developer
BuildStar Technologies
- Created a hybrid mobile app using the Ionic framework to extend a legacy web app.
- Added API endpoints to the existing ColdFusion back end as needed.
- Assisted with testing and management of Kubernetes-based back end and built scripts.
Senior Software Developer
Untappd
- Rewrote the Untappd mobile app using Ionic, Angular, TypeScript, and Cordova.
- Worked with three other developers to create the Untappd for the business platform using Ruby on Rails.
- Created the API and back-end services to support the Next Glass mobile app using Python, Flask, SQLAlchemy, and PostgreSQL.
- Developed a distributed image processing pipeline using Python, Celery, Redis, Amazon S3, Amazon SQS, and Cloudinary.
Lead Software Developer
AcctVantage ERP
- Led a three-person development team to help expand a small business ERP application using the 4D language, database, and development environment.
- Built a modern REST API server from scratch on top of our legacy ERP system to enable the company to expand beyond our existing product line.
- Integrated the Magento web store into our application with a custom SOAP communication library to create a two-way communication channel between our product and the online web store using the Magento SOAP API.
Curator of Collections
Naples Botanical Garden
- Created a responsive web app using Python, Flask, and PostgreSQL to allow garden staff to manage the garden's plant collections in the field.
- Wrote plant accession and management policies for a living plant collection.
- Consulted with the horticultural team about the maintenance, care, and health of the garden's plant collection.
Technical Support Specialist | Foreman of the Garden
Belize Botanic Gardens
- Created Bauble which is an open-source, cross-platform desktop application for managing plant collections.
- Managed the internal network of Linux and Windows computers with Active Directory.
- Managed all plant records for the garden including the accessioning, species determinations, and mapping of thousands of individual plants.
Software Developer
Flavor Software
- Implemented the MPEG-J standard of the MPEG-4 specification to allowing interactive video files by programmatically manipulating the video's scene graph.
Experience
Bauble
http://bauble.io/I founded this project and released it as open-source software. It has since been taken over by a small community of developers.
ZBar for Python
https://github.com/brettatoms/zbar-ctypesXQS | X Query Service
https://github.com/brettatoms/xqsUntappd Mobile App
Skills
Languages
TypeScript, JavaScript, Python, Python 3, Clojure, Java, C++, Ruby, Go, GraphQL, SQL
Frameworks
Flask, Ionic, Angular, React Native, ClojureScript, JNI, Sencha Touch, Ruby on Rails (RoR), Django, Spark
Libraries/APIs
Vue 2, Vue, SQLAlchemy, REST APIs, Lodash, React, RxJS, PySpark, Node.js, ArcGIS, Pandas, PyGTK, Ctypes
Tools
Apache Airflow, Pytest, Terraform, Boto, Boto 3, Amazon Simple Queue Service (SQS), Emacs, Celery, Adobe ColdFusion, Expo, ZBar, Amazon Elastic Container Service (Amazon ECS), AWS Glue, Spark SQL
Platforms
Heroku, Firebase, Google App Engine, Docker, Amazon Web Services (AWS), Kubernetes, MacOS, Linux, Google Cloud Platform (GCP)
Other
Tox, Firebase Cloud Functions, Google Cloud Functions, Cloudinary, Cordova, BG-BASE, MP4, MPEG, Amazon Route 53, Motif, 4D, Enterprise Resource Planning (ERP), Concurrency
Paradigms
ETL, Agile, Functional Programming
Storage
PostgreSQL, Redis, SQLite, Data Pipelines, MySQL, Google Cloud, Amazon S3 (AWS S3)
Education
Bachelor of Science Degree in Computer Science with a Mathematics minor
University of North Texas - Denton, TX, USA