Avi Steinberg, Full-stack Developer in New York, NY, United States
Avi Steinberg

Full-stack Developer in New York, NY, United States

Member since April 13, 2020
Avi is a full-stack engineer with three years of full-stack experience and a robust back-end foundation working with Node.js and Python. He is comfortable developing web and serverless applications. In addition, Avi has performed front-end client work using AngularJS and React. Avi excels at tackling challenging problems thanks to a strong technical background from studying mathematics, mechanical engineering, and computer science.
Avi is now available for hire

Portfolio

  • NBCUniversal
    Node.js, AngularJS, React, Serverless Architecture, MongoDB, Docker...
  • Tatango
    Node.js, Serverless Framework, Ruby on Rails (RoR), Sidekiq, PostgreSQL...
  • Toptal
    Node.js, React, Storybook, GraphQL, Ruby on Rails (RoR)

Experience

Location

New York, NY, United States

Availability

Part-time

Preferred Environment

Amazon, Microsoft Teams, Slack

The most amazing...

...I've developed a process mining visualization library currently being used by T-K from CKM Analytix's IT operations enterprise software.

Employment

  • Full-stack Software Engineer

    2021 - PRESENT
    NBCUniversal
    • Performed full-stack development on the Peacock Video Engineering team to build out features for a video-content management system (VCMS) used to manage live event streams for Peacock.
    • Worked predominantly with Node.js, TypeScript, React, and Angular to develop and deploy various internal serverless applications used by the Peacock Video Engineering team.
    • Added NBC SSO authentication to different internal applications using both implicit and authorization workflow, so internal employees can log into the app using their NBC credentials.
    • Developed AWS Lambda functions that interact with a back-end database, Redis, and various third-party APIs to send data in the proper format to various downstream systems.
    Technologies: Node.js, AngularJS, React, Serverless Architecture, MongoDB, Docker, AWS Lambda, Serverless Framework, Agile
  • Full-stack Software Engineer

    2020 - 2021
    Tatango
    • Abstracted the functionality of approximately five major aspects of Tatango's business logic from their monolith application into microservices written in Node.js and deployed as AWS Lambda functions using Serverless Framework.
    • Collaborated in an agile environment, using Jira and Sprints. I was able to successfully work asynchronously with a team scattered around the world.
    • Advanced AWS Lambda functions ran tens of millions of times a day by actual customers in a production environment.
    • Worked with the DevOps team to develop a strategy to seamlessly transition from the monolith application to these new microservices without causing issues to the current customers.
    Technologies: Node.js, Serverless Framework, Ruby on Rails (RoR), Sidekiq, PostgreSQL, MySQL, AWS Lambda, AWS CloudWatch, AWS API Gateway, Amazon SQS, AWS S3
  • Full-stack Engineer Freelance

    2020 - 2021
    Toptal
    • Worked with a UI/UX designer to create React components for the "Company Spotlight" and "Spotlight Article" sections of Toptal's website.
    • Created back-end models and GraphQL queries in Ruby on Rails (RoR) so that the data for my React components could be changed using Toptal's content management system (CMS).
    • Developed React components that passed code reviews before being deployed.
    Technologies: Node.js, React, Storybook, GraphQL, Ruby on Rails (RoR)
  • Full-stack Data Scientist

    2018 - 2020
    CKM Analytix
    • Developed a dockerized Django app that uses NLP to generate advanced call-center analytics on real-time customer service call transcripts processed from AWS Connect, utilizing multiple AWS technologies, such as AWS Lambda, S3, and Kinesis streams.
    • Designed, developed, and deployed an internal skills application using Django and a PostgreSQL database to make it easier for employees to update their technical skills.
    • Developed a Node.js process mining library TypeScript to filter, visualize, and identify inefficiencies in large and complex business operations. It's now used by CKM's enterprise software, T-K, to power its process mining module.
    Technologies: Amazon Web Services (AWS), Docker, Statistical Analysis, Node.js, HTML5 Canvas, Jira, Pandas, MySQL, PostgreSQL, REST APIs, Django, TypeScript, NumPy, CSS, Machine Learning, D3.js, Python 3, Git, JavaScript, Vue.js, AWS, Python
  • Data Science Intern

    2016 - 2017
    Lighthouse Datalab
    • Worked as part of a team using RStudio on the Google Cloud server to determine audience profiles for public radio datasets that consisted of millions of rows and over 100 columns.
    • Implemented the k-means algorithm, the PAM algorithm, and density-based clustering methods to cluster users based on similar listening tendencies.
    • Created summary reports for clients that used data visualizations and tables to concisely convey the results of the analysis.
    Technologies: Statistical Analysis, Machine Learning, Git, Google Cloud Platform (GCP), R

Experience

  • Hair Simulation Web Application
    https://hair-simulation.herokuapp.com/

    I built a Node.js web app using TypeScript that allows the user to visualize and manipulate what the cosmetic hair tattooing technique known as hair simulation would look like on the client's head. In this project, I utilized D3.js to create spray brush and drawing tool functionalities on the client's photo. The image is able to be edited by using HTML5 Canvas elements to store and edit the images. This app is being used as a marketing tool to show potential clients what their hair would look like after completing the hair simulation procedure. The application is currently deployed on Heroku at the provided project URL below.

  • Internal Skills Application

    I built a Django web app using Python for the back end, a PostgreSQL database, and regular JavaScript, HTML, and CSS for the front end. I developed this app as a project for the knowledge-sharing committee at CKM Analytix. It is connected with Microsoft Authenticator so every employee can log in with their email address and update their technical skills. The goal of this app was to make it easier to perform analytics on the employees' skills so they can know where their strengths and weaknesses are.

    Before this app existed, they sent out a questionairre to all the employees to fill out their skills and then they saved the data as CSV files and performed analysis on it. This app replaces the questionairres by letting each employee update their skills on their profile. If they just completed a new project and got better at a specific skill then they can update their level from beginner to intermediate, for example.

    Also, all of the data is stored in the database, so it is prepared and ready to do analysis on. I also created a few views that show charts visualizing the employee skill distribution for different categories and subcategories. The charts update dynamically as new employees update their skills.

  • Call Center Analytics Application

    With a team of three people, I developed a Python package and accompanying back-end code to perform data manipulations on the call scripts as well as a Django application to present call center data using real-time visualizations. Our data engineering pipeline directly connected to data generated from an AWS Connect call center instance.

    I also wrote AWS Lambda functions to read, manipulate, and clean all call data and agent data created by AWS Connect and then write them to a PostgreSQL database. We connected the database to the Django models, so we could then use the data to create views to show what's happening. One Lambda function was also connected to the AWS Connect Livestream, and we were able to show live-stream call transcripts as they occurred with AWS Connect agents.

    We also employed various natural language processing models—such as topic modeling and sentiment analysis—to provide more insight into analytics about different categories of calls and to see which calls went bad. I worked on this project from end-to-end. We built this project as a prototype as a showcase for potential clients and as a proof of concept before the DevOps team incorporated the idea into their enterprise app.

  • Process Mining Visualization Library

    I worked as a part of a small team three that developed a Node.js process mining library written in TypeScript with the functionality to filter, visualize, and identify inefficiencies in large, complex, business operations processes. We implemented the Fuzzy Mining algorithm as well as other filtering algorithms that we had developed to take raw audit logs and ticket data from IT incidents and service requests and categorize and filter them to show the visualization of the big picture of what is happening in the process. We provided a workgroup-level or an agent-level process map with summary statistics on each node and edge.

    The visualization is interactive, and it gives the user the ability to start with a zoomed-out view of the process and then zoom in on any specific aspect of interest. We utilized D3.js with Graphviz to create process maps and other visualizations. We added sensitivity tuning parameters that can be used to adjust to what degree you want to filter down the original process map.

    This library is currently being used by CKM Analytix's enterprise software, T-K, to power their process mining visualizations.

  • Amazon Product Review Scraper

    I developed a tool using R to scrape all product reviews for a given item on Amazon.com and then used analytics to create automated reports in Excel with sales projections about that product based on the frequency of recent reviews. These projections are based on the assumption that a certain percentage of people write reviews and using that to infer how many people bought the product. This was a way that we could get a little bit more insight into how different products were doing from a financial perspective.

Skills

  • Languages

    Python 3, Python, TypeScript, CSS, HTML, SQL, R, C, JavaScript, GraphQL, C++
  • Libraries/APIs

    D3.js, REST APIs, HTML5 Canvas, Pandas, NumPy, Plotly.js, Node.js, React, React Router, Vue.js, Sidekiq
  • Tools

    Git, Jira, SOLIDWORKS, AWS ECR, Slack, Microsoft Teams, AWS CloudWatch, Amazon SQS
  • Frameworks

    Django, AngularJS, Angular, Ruby on Rails (RoR), Serverless Framework
  • Platforms

    Amazon Web Services (AWS), Linux, AWS Lambda, AWS EC2, Docker, Shopify, Amazon, Google Cloud Platform (GCP)
  • Storage

    PostgreSQL, MySQL, AWS S3, AWS DynamoDB, MongoDB
  • Other

    K-means Clustering, Machine Learning, Process Mining, Web Scraping, Probability Theory, Physics, Linear Algebra, Statistics, Differential Equations, Calculus, 3D Printing, Thermodynamics, Statistical Analysis, AWS, Storybook, AWS API Gateway
  • Paradigms

    Serverless Architecture, Agile

Education

  • Bachelor's Degree in Mechanical Engineering
    2016 - 2018
    Columbia University - New York, NY, United States
  • Bachelor's Degree in Mathematics
    2013 - 2016
    Yeshiva University - New York, NY, United States

Certifications

  • Certified AWS Developer Associate
    OCTOBER 2019 - NOVEMBER 2022
    Amazon Web Services (AWS)

To view more profiles

Join Toptal
Share it with others