Kaiser Dandangi, Developer in Toronto, ON, Canada
Kaiser is available for hire
Hire Kaiser

Kaiser Dandangi

Verified Expert  in Engineering

Software Developer

Location
Toronto, ON, Canada
Toptal Member Since
January 10, 2019

By developing for large enterprises and small startups, Kaiser has spent a lot of time around web technologies. Challenges of operating at scale have taught him the importance of choosing mature solutions, and agility of small teams have demonstrated the importance of quick iterative development. As a web technology generalist with a passion for delivering amazing products, Kaiser values a healthy balance of speed and stability.

Portfolio

Instacart
React, AngularJS, Flask-RESTful, PostgreSQL, Ruby on Rails (RoR), GraphQL...
Thrivespring
React, Next.js, Python 3, Django, Django REST Framework, Bulma, CSS, HTML...
PagerDuty
Elixir, Phoenix, React, Redux, Terraform, Ruby on Rails (RoR), REST APIs...

Experience

Availability

Part-time

Preferred Environment

MacOS, Git, Visual Studio Code (VS Code), Sublime Text 3

The most amazing...

...thing I've built is a framework for data scientists to build ML models.

Work Experience

Senior Software Engineer

2021 - PRESENT
Instacart
  • Led a complex multi-quarter project for migrating the second-largest enterprise customer to the new platform. I directly led 12 engineers and influenced a multidisciplinary product, design, business development, and professional services, team.
  • Designed and Implemented a brand new UI widgets framework to take advantage of the enterprise design system and enterprise public APIs.
  • Scoped and tackled a key technical problem around data isolation to unblock large migrations without letting project timelines slip and minimizing the impact on feature teams.
  • Addressed a key performance problem for the primary project of my organization during my first week on the job while working with stakeholders across organizations and ramping up the codebase.
Technologies: React, AngularJS, Flask-RESTful, PostgreSQL, Ruby on Rails (RoR), GraphQL, REST APIs, API Integration, APIs, API Development, Back-end, Software Design, Full-stack, Leadership, Requirements Analysis, Desktop Web Design, Architecture, TypeScript, SQL, Node.js, Express.js, Scrum, Firebase Realtime Database, Microservices, Jira, CSS, Amazon Web Services (AWS), Web Development, Responsive UI, Mobile Web, Front-end, HTML5, Code Architecture, Storybook, Software Architecture, Technical Leadership, Scalable Architecture, Mobile, Microservices Architecture, HTML, Web UX, Web UI, AWS Cloud Architecture, API Architecture, Architectural Patterns, Separation of Concerns (SoC), Cloud Architecture, Cloud Patterns

Contract Software Architect and Developer

2020 - PRESENT
Thrivespring
  • Wrote and deployed a social platform from scratch using Django, React/Next, and Bulma, backed by a MySQL cluster hosted on AWS and Vercel.
  • Implemented autoscalers for AWS Fargate to respond dynamically to traffic needs.
  • Migrated a simple React app to use Next.js to support SSR and SSG for SEO and page load speeds.
  • Worked with the client to prioritize and refine requirements to optimize for time to market and iterate quickly with user feedback.
Technologies: React, Next.js, Python 3, Django, Django REST Framework, Bulma, CSS, HTML, MySQL, Amazon Aurora, AWS Fargate, REST APIs, Back-end, Full-stack, Front-end, Scrum, TypeScript, Amazon Web Services (AWS), SendGrid, QR Codes, Web Development, Responsive UI, Mobile Web, HTML5, APIs, Code Architecture, Software Architecture, Technical Leadership, Scalable Architecture, Serverless, Web UX, Web UI, Heroku, Amazon EC2, AWS Cloud Architecture, Serverless Architecture, API Architecture, Architectural Patterns, Separation of Concerns (SoC), Cloud Architecture, Cloud Patterns

Senior Software Engineer

2019 - 2021
PagerDuty
  • Designed the system architecture, data model, and API for a new system to support a business-critical initiative with consideration for the 100x scale of the existing system and backward compatibility of features.
  • Proposed and led new initiatives to support junior and intermediate engineers learning about PagerDuty-specific engineering practices around the Elixir language and web services based on Phoenix.
  • Created code-generation tooling for spinning up new Elixir microservices to codify engineering best practices.
  • Winner of PagerDuty Q1 2020 Hackweek Scalability Challenge. I was a member of the engineering mentorship group.
Technologies: Elixir, Phoenix, React, Redux, Terraform, Ruby on Rails (RoR), REST APIs, API Integration, APIs, API Development, Back-end, Software Design, Full-stack, Leadership, Requirements Analysis, Desktop Web Design, Architecture, SQL, Node.js, Scrum, Microservices, Jira, CSS, Amazon Web Services (AWS), Web Development, Responsive UI, Mobile Web, Front-end, HTML5, Code Architecture, Storybook, Software Architecture, Technical Leadership, Scalable Architecture, Microservices Architecture, HTML, Web UX, Web UI, SaaS, Serverless Architecture, API Architecture, Architectural Patterns, SaaS Design, Separation of Concerns (SoC), Software as a Service (SaaS), Cloud Architecture, Cloud Patterns

Full-stack Developer

2017 - 2019
Freshbooks
  • Designed an extensible and performant database schema to replace legacy data models and executed the migration live with no downtime with the ability to roll back data to the old schema even after inserting new data.
  • Created an extensible tool allowing for a standard way of aggregating analytical data. A key feature was fault tolerance, allowing data scientists to recover long jobs instead of restarting from scratch, thus accelerating aggregation effort by 75%.
  • Implemented a brand new automated E2E testing suite using Capybara/Selenium and Cucumber that drastically reduced QA time from 30 minutes to 30 seconds, drastically increasing developer productivity.
  • Used NLP techniques to translate user questions into real-time business intelligence queries, allowing ad-hoc business insights for FreshBooks users.
  • Upgraded a legacy web service from Python 2.7 to Python 3.6.
Technologies: Ruby on Rails (RoR), Ruby, RabbitMQ, Git, MySQL, Docker, Ember.js, Flask, JavaScript, Python, REST APIs, API Integration, APIs, API Development, Back-end, Software Design, Full-stack, Leadership, Requirements Analysis, Desktop Web Design, Architecture, SQL, Node.js, Express.js, Scrum, Microservices, Pytest, Jira, Kubernetes, Redis, CSS, Stripe API, Web Development, Responsive UI, Mobile Web, Front-end, HTML5, Code Architecture, Software Architecture, Technical Leadership, Scalable Architecture, Mobile, Microservices Architecture, HTML, Web UX, Web UI, AWS Cloud Architecture, SaaS, API Architecture, Architectural Patterns, SaaS Design, Separation of Concerns (SoC), Software as a Service (SaaS), Cloud Architecture, Cloud Patterns

UI Architect

2012 - 2016
Capgemini Canada
  • Designed and built a complex app for a highly regulated enterprise logistics company using AngularJS.
  • Implemented test-driven development (TDD) by establishing unit testing guidelines and implementing processes for test case creation, code coverage, and pass criteria to ensure adherence to business rules.
  • Completed major refactoring effort of four core modules comprising over 40,000 LOC by conducting code reviews and implementing modern best practices such as modular components, single-purpose functions, and lint rules.
  • Created a framework for making UI components that would be shared between internal projects, with support for code demos.
  • Implemented the automation of test data creation and execution of test scenarios, drastically reducing manual testing effort.
Technologies: Subversion (SVN), AngularJS, JavaScript, REST APIs, Software Design, Leadership, Requirements Analysis, Desktop Web Design, Architecture, Web Development, Front-end, HTML5, Code Architecture, Technical Leadership, HTML, Web UX, Web UI, API Architecture

Ember Linkify - Maintainer

https://github.com/johno/ember-linkify
I am a maintainer for an EmberJS extension for automatically detecting URLs in text blocks and turning them into anchor tags. I extended the library to allow multiple links and I maintain the developer documentation.

NPM registers over 2000 downloads per week
Technologies used: Ember.js, JavaScript, TravisCI, qunit

Ember Inspector - Contributer

https://github.com/emberjs/ember-inspector
Chrome/Firefox debug tooling for EmberJS applications.
Utilities for inspecting application internals using abstractions sensible for the EmberJS framework.

I contributed the search feature for the Component explorer tab allowing developers to search for components instead of scrolling through the view tree.

Technologies used: JavaScript, Ember.js, Chrome Web Extension

Pytest Flask SQLAlchemy - Contributer

https://github.com/kamikaz1k/pytest-flask-sqlalchemy
This is a pytest plugin to enable DB transaction based cleanup of database tests for applications that use Flask-SQLAlchemy. Using nested transactions to rollback changes allows tests to run much faster because the cleanup operation is all in memory.

I extended the plugin to work with MySQL.

Technologies used: pytest, MySQL, Postgres, Python/Flask/SQLAlchemy

Using OpenCV with Python - Author

https://medium.com/@kamikaz1_k/programming-skills-to-be-useless-while-feeling-productive-776fa97dca35
An article on how to use OpenCV to locate faces in images, and perform image splicing using numpy. It uses a toy problem to illustrate concepts about how to use the numpy array API, how images are represented in OpenCV, and strategies on performing transformations on these images.

Technologies used: OpenCV, numpy, GIL, Python

BoomStream - Synchronized Music Playback

https://github.com/kddial/streamSync
Developed a synchronized streaming application for a Hackathon. The node.js application uses web sockets to connect to clients (web apps) to create a listening room. Using synchronized controls, you can play/pause/stop/fast-forward/rewind music simultaneously for all connected clients. The application also has a group playlist feature to allow collaborative music queueing.

Technologies used: WebSockets, node.js, jQuery, express
2006 - 2012

Bachelor of Applied Science Degree in Engineering

University of Toronto - Toronto, Ontario, Canada

Libraries/APIs

React, REST APIs, API Development, Flask-RESTful, Node.js, Stripe API, Ember Data, SQLAlchemy

Tools

Pytest, SendGrid, Sublime Text, Subversion (SVN), Git, Docker Compose, Cucumber, RabbitMQ, Terraform, AWS Fargate, Jira, Sublime Text 3

Frameworks

Redux, Ruby on Rails (RoR), Flask, Ember.js, Next.js, Express.js, AngularJS, Capybara, Phoenix, Django, Django REST Framework, Bulma

Paradigms

Requirements Analysis, Scrum, Microservices, Microservices Architecture, API Architecture, REST, Desktop Web Design, Serverless Architecture, Agile

Languages

Python, Python 3, JavaScript, TypeScript, HTML, HTML5, SQL, GraphQL, CSS, Ruby, Elixir

Storage

PostgreSQL, MongoDB, MySQL, Google Cloud, Amazon Aurora, Firebase Realtime Database, Redis

Platforms

Amazon Web Services (AWS), Heroku, MacOS, Docker, Kubernetes, Visual Studio Code (VS Code), Mobile, Amazon EC2

Other

API Integration, APIs, Back-end, Software Design, Full-stack, Leadership, Architecture, Front-end, Web Development, Responsive UI, Mobile Web, Code Architecture, Software Architecture, Technical Leadership, Scalable Architecture, Web UI, SaaS, Architectural Patterns, SaaS Design, Separation of Concerns (SoC), Software as a Service (SaaS), Cloud Architecture, Cloud Patterns, QR Codes, Storybook, Serverless, Web UX, AWS Cloud Architecture, Chrome Extensions, Containers, Software Engineering

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring