Chris Lee
Verified Expert in Engineering
Software Developer
Chris has years of experience in developing API services. He's most comfortable using the aiohttp package, SQLAlchemy (Alembic), and the PostgreSQL stack, but he's also familiar with Flask, MongoDB, Redis, and more. He's been a part of the back-end team at Indico Data Solutions—a machine learning API and tools provider—developing back-end services handling big data processing and analysis. Chris also has excellent skills with AWS, GCE, and Azure clouds.
Portfolio
Experience
Availability
Preferred Environment
Docker, Ubuntu, MacOS
The most amazing...
...thing has been designing and developing the entire tech infrastructure for https://indicodata.ai: it serves huge data loads and produces tons of business value.
Work Experience
Principal Engineer
Indico Data Solutions
- Designed and integrated new technologies into an incredibly large and complex microservices infrastructure.
- Mentored multiple teams of engineers and guided them in the design and development of features.
- Built, maintained, and deployed back-end services for data visualization tools, data analysis, and custom machine learning model training tools (Indico's Crowdlabel).
- Developed, maintained, and deployed a machine learning API server with several gigabytes of machine learning models behind the scenes.
- Constructed in-house deployment utilities for AWS, Azure Cloud, and Google Compute Engine capable of spinning up several clusters of API workers with a simple script.
- Created a scheduling service that extracts information via scraping an API from several online mediums, performs a series of text analyses (keywords, topics, text features, sentiment, and more), and continuously builds a text corpus.
- Developed and maintained client libraries and SDKs for machine learning APIs across several different languages, including Python, Java, Android, JavaScript (Node.js), Ruby, PHP, and until recently, R.
- Set up continuous integration on all projects using Docker, Docker Compose, and CodeShip (Jet).
- Improved large data ETL and database transactions by optimizing speed and memory consumption.
- Managed the infrastructure in Kubernetes and deployed a series of Celery pipelines woven together with a Redis-result store and a RabbitMQ cluster broker.
AI Developer
Intellibridge LLC
- Developed ETL connectors to load data from internal systems via API and sync them into a vector database for use as a retriever.
- Integrated with MetaGPT project communicating over Amazon SQS queues.
- Set up a Milvus cluster using Terraform and Kubernetes with monitoring and Kafka metrics.
Back-end Developer | Python and API Design
Metalenz, Inc.
- Developed a user portal to host installers locked behind user authentication.
- Built an administrative interface tool to manage the database for the user portal.
- Developed a camera SDK for Metalenz's proprietary camera hardware.
SDK Engineer
Metalenz
- Built Python API for camera hardware and calibration processes.
- Helped integrate camera hardware into desktop GUI application, using PyQT5 and the API I developed.
- Built the user portal back end and front end on FastAPI, SQLAlchemy, and React to provide authenticated file access to users.
SQLAlchemy Consultant
JEFuller
- Served as a database consultant on how to improve the database structure and database queries.
- Performed a high-level audit of an existing system and created a low-to-high priority action items report.
- Assisted in debugging nondeterministic behavior with database connection management. Refactored the codebase to have cleaner and more reliable database connection logic.
Software Developer
TargetSmart
- Developed TargetSmart APIs on AWS Lambda. Maintained, modified, and tested APIs as necessary.
- Queried database information from an AWS Aurora SQL database.
- Developed auto-example API generation for client-facing documentation.
- Supported the updating and adding documentation to new APIs.
Python Developer
Ontic
- Interfaced with several crypto-exchange APIs like KuCoin, Binance, Bittrex, Bitfinex, OKEx, Poloniex, Huobi, and CCXT.
- Used REST APIs and WebSocket APIs to acquire data in real time.
- Saved time-sensitive data into a Redis database and enabled database clients to retrieve data through a simple interface.
- Developed async IO implementations for asynchronous operations.
- Used cfscrape (a Python library) to bypass a Cloudflare anti-bot page.
Python and Facebook API | Developer
Lerderian, Inc. (via Toptal)
- Created a series of recurring data ETL tasks for API data from Facebook and Instagram.
- Developed an image downloader and vectorizer and stored the data in PostgreSQL for future use in image analysis.
- Built an HTTP Server to trigger ETL tasks, synced Facebook accounts through OAuth 2, and performed analysis tasks on data.
- Created a database schema that allows for plug-and-play data ETL types from different API endpoints.
- Developed a sophisticated command-line tool to interface with an aiohttp server.
Software Developer
Seven Hills
- Handled the ingressing and processing of Google Sheet data via the Google API.
- Designed an interface for Windows executable to run browser automation and data collection.
- Automated the Windows COM API for a desktop application.
Software Developer
IDEA Public Schools
- Automated scraping data from web portal.
- Queried MS SQL database across multiple tables for aggregate and time-series information.
- Generated multi-sheet Excel workbooks with formatting and formulas.
- Automated weekly/monthly report generation using a Windows scheduler.
Android Developer Intern
Hangtime, Inc.
- Used LruCache and preloading to create smooth scrolling and fragment transitions.
- Built generalized adapters to use the same item caching and loading techniques across the application—decreasing the amount of additional logic and maintenance in the codebase.
- Created custom animations for spinners, loading screens, and sliding notifications and banners.
- Implemented a variety of intents for deep linking, third-party activity linking (camera, SMS, email, and other social media apps).
- Reduced the source code to less than half of the original while adding twice the amount of features—bringing the product to feature completeness.
Experience
PDFtoImage.py
I needed to extract only the image data from the PDF to perform OCR on the scanned image. I used Indico's PDF extraction tool to extract the image data. I also have an image processing step to prepare for (optical character recognition) OCR. This involved applying thresholding to the pixel data, resulting in a higher contrast black-and-white image.
The rest of the project uses the Google Cloud Vision API to perform OCR on the extracted image. Then, it parses the resulting data using a combination of filters and pattern matching via Python regexes to determine the row and column of each cell. The resulting data is then written into an Excel file for the client.
Privvy
https://github.com/sihrc/privvyIt comes with Bash functions that are set up on package installation to either manually sync private files or to set up the Git hook integrations.
Tornado and Motor Boilerplate
https://github.com/sihrc/tornado-boilerplateIt contains boilerplate that allows API routes to take shape quickly from scratch. It has a 100% test coverage run with a Travis integration.
StoryQuilt | Android App
https://github.com/sihrc/Story-QuiltThis was a culmination of a semester course on Android development. It puts into practice various kinds of ItemAdaptors, modularized fragments, real-time database synchronization (Firebase), and Google User authentication and permissions.
Custom Collection Tutorial
https://github.com/sihrc/custom-collection-tutorialIndikit
https://github.com/sihrc/indikitIt also contains an API wrapper designed to allow easy access to the machine learning APIs.
Skills
Languages
R, Python, Python 3, SQL, Java 8, JavaScript, Regex
Libraries/APIs
SQLAlchemy, NumPy, Google APIs, Pandas, TensorFlow, Google Maps API, Facebook API, Google API, Facebook Open Graph API, Google Sheets API, React, ZeroMQ, Scikit-learn, PyQt 5, Python Asyncio, Camera API, Google Cloud API, Node.js
Tools
Docker Compose, Celery, Amazon Elastic Container Service (Amazon ECS), Google Compute Engine (GCE), Android Studio, RedBeat
Paradigms
DevOps, Object-oriented Programming (OOP), Agile Software Development, Responsive, Microservices
Platforms
Docker, Google Cloud Platform (GCP), Azure, Android, MacOS, Ubuntu, Amazon Web Services (AWS), AWS Lambda, Microsoft
Storage
Amazon S3 (AWS S3), Redis, PostgreSQL, RethinkDB, MongoDB, Azure Cloud Services
Other
APIs, Software Design, Architecture, Async/Await, Containerization, Tornado, Data Scraping, Distributed Systems, Content, COM, Poetry, SDKs, HTTP Server, FastAPI, CI/CD Pipelines, API Design, OCR, Artificial Intelligence (AI)
Frameworks
Android SDK, Selenium, Flask, Django
Education
Bachelor of Science Degree in Engineering: Computing
Olin College of Engineering - Needham, MA, USA
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring