Umair Khan
Verified Expert in Engineering
Scraping Developer
Umair is a Python developer and entrepreneur. He has over 15 years of experience writing software, has founded three companies, and is passionate about solving performance-related problems. He built an open-source alternative to Slack, authored BitMate software that made the BitTorrent protocol accessible to low-bandwidth nodes, and created an application that automates drop shipping.
Portfolio
Experience
Availability
Preferred Environment
Vim Text Editor, Linux, Docker
The most amazing...
...project I have worked on is BitMate: a low-bandwidth client for the popular BitTorrent protocol. It has been featured on websites such as GigaOm.
Work Experience
Senior Back-end Python Developer
Freelance
- Upgraded the codebase from Flask 1.0 to Flask 2.0.
- Upgraded the codebase so that it can be deployed as Lambda functions using Zappa (https://github.com/zappa/Zappa).
- Improved the test coverage to 80%. This was done before the Flask version bump. It allowed us to make sure that everything was working perfectly well after the version upgrade.
Full-stack Python Contractor
PixieBrix
- Updated the API views to use proper DRF base classes to reduce code size.
- Incoporated OpenAPI schema generation. API documentation was made available via a webpage. OpenAPI YAML file was used to generate TypeScript type definitions.
- Implemented link header pagination in the project.
- Developed API versioning. This allowed us to move only a subset of API endpoints to their paginated versions.
- Built API throttling. The requirement was to have different rate limits for different endpoints.
- Increased code coverage to over 90%. We used mocks, factory boy, and others to write tests that covered permissions and business logic.
CEO
Fecundity
- Scaled the team from two to 28 employees within a year.
- Oversaw the development of large-scale scraping software, the back end of event management software, and a progressive web app.
- Created infrastructure for running the business such as the accounts, HR, and operations department.
- Create API backend in Python/Django. This backend served web application, PWA, and native mobile apps of the client.
- Worked on the ETL of data from the legacy MongoDB to the new PostgreSQL DB.
Python Contractor
Dropified
- Developed a Python Django application that automates the dropshipping business.
- Used Python Celery to write asynchronous tasks. We used a Redis broker.
- Tracked bugs and user stories using Jira software.
CEO
Droozal
- Managed the first independent office while running Droozal.
- Developed a Python/Django software to automate the printing of business cards.
- Used Docker to manage the servers in development and production environments.
Python Contractor
Zulip
- Contributed to a very successful open-source project.
- Mentored high school students for Zulip in Google Code-in.
- Mentored university students for Zulip in Google Summer of Code.
- Developed the Python back end. The technology stack included Django, Tornado, and PostgreSQL.
- Built the front end localization. I used the i18next library to manage the translations.
Software Contractor
BuzzFeed
- Assisted in the development of a very performant machine learning software.
- Automated server configuration and management using Chef.
- Interfaced C++ with Python to call code written in C++ from Python.
Python Developer
Freelance
- Assisted on a localization software. This software was responsible for managing a distributed team of translators and their work.
- Used Git for collaboration within a team of developers.
- Learned how to do test driven development using Python unit tests and mock-ups.
Founder and Lead Developer
Blend.pk
- Launched Pakistan's first job search engine. The concept was similar to Indeed.com.
- Created spiders to scrape job listing from different job portals in Pakistan.
- Implemented the Levenshtein distance algorithm to guard against incorrect spelling in user searches.
Research Assistant
LUMS
- Authored BitMate software which made the BitTorrent protocol fair to the low-bandwidth nodes.
- Published a paper in HotNets. It is considered a very prestigious conference.
- Completed research in the field of peer-to-peer software technology.
Software Developer
VST
- Developed a medical record management software in VB.Net.
- Became a team lead and managed a team of three developers and two QAs.
- Developed a school management software in C#.Net. I was also involved in requirements gathering for this project.
Experience
BitMate
Zulip: Open-source Group Messaging Software
https://zulip.comTwitter Live Feed
https://github.com/Prixite/twitter-livefeedBack-end Template
https://github.com/Prixite/backend-templateReact/Flask Template
https://github.com/Prixite/react-flask-demoEducation
Master's Degree in Computer Science
LUMS - Lahore, Pakistan
Bachelor's Degree in Computer Science
FAST-NU - Lahore, Pakistan
Skills
Libraries/APIs
jQuery, Django ORM, React, Twitter API, Node.js, Flask-RESTful
Tools
Vim Text Editor, Git, Celery, RabbitMQ, NGINX, Webpack
Frameworks
Django, Django REST Framework, Flask, AngularJS
Languages
Python, JavaScript, Python 3, SQL, C++, CSS, TypeScript 3
Paradigms
REST, Unit Testing, Management, Lambda Architecture
Platforms
Linux, Docker, Google App Engine, AWS Lambda, Amazon Web Services (AWS)
Storage
Memcached, PostgreSQL, Relational Databases, Redis, Databases, MySQL
Other
Scraping, Tornado, WebSockets, Back-end, Gunicorn, APIs, UI Automation, Automated UI Testing, Technical Leadership, Full-stack, ESLint, Lambda Functions
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