Haider Ali Agha
Verified Expert in Engineering
Python Developer
Dublin, Ireland
Toptal member since February 21, 2021
Haider is a back-end developer who uses REST APIs to build great developer experiences. He has developed SDKs and documentation that power dozens of API programs globally and are used by thousands of developers. During his time at APIMatic, he helped major companies such as Sabre Corporation and Bandwidth maximize the developer experience for their REST APIs. He is now looking to share his expertise with a broader audience.
Portfolio
Experience
- Git - 6 years
- Python - 6 years
- REST APIs - 5 years
- Postman - 4 years
- Java - 3 years
- API Documentation - 3 years
- C#.NET - 3 years
- Google Cloud Platform (GCP) - 1 year
Availability
Preferred Environment
Windows, Visual Studio, Visual Studio Code (VS Code), Jira, Slack, C#.NET, Git, Python, Google Cloud Platform (GCP)
The most amazing...
...product I've developed is version 3 of APIMatic's SDKs, which incorporate three years' worth of learning and customer feedback to offer an enhanced experience.
Work Experience
Site Reliability Engineer (SRE)
Indeed
- Collaborated with product teams to improve the performance and reliability of their Python and Java apps, ensuring that Indeed's services were always available.
- Identified points of failures in critical services owned by my team and added monitoring to ensure that outages were reported and handled in a timely manner, in line with service-level objectives (SLOs).
- Used Terraform to set up dashboards, monitors, and SLO alerts on Datadog to provide monitoring in a manner that is sustainable for the product team to maintain.
- Mentored product teams on how to set up Datadog SLOs and alerts using Terraform, minimizing the team's reliance on SREs for such actions.
- Aided the migration from on-prem to the cloud by using Datadog metrics to find traffic to on-prem services and updating said services to target cloud deployments.
- Addressed production issues while on-call to maximize customer satisfaction and minimize revenue loss.
Python Engineer for Data Platform
Databricks
- Developed a pipeline on Databricks to manage tickets on Jira for vulnerabilities found by Qualys and Dependabot and for compliance reports generated by Qualys.
- Implemented caching and batch processing to speed up processing and reduce database reads and writes.
- Created an error handling and alerting framework to allow the pipeline to continue when facing non-fatal errors and to exit gracefully when facing fatal errors.
- Automated the generation of the monthly plan of actions and milestones (POAM) reports, replacing a manually created CSV with a Google Sheet automatically created within the appropriate folder in Google Drive.
- Triaged the vulnerability scan results from multiple APIs to provide a unified view.
Python and Cloud Developer
Navarc
- Developed a pipeline to load data from the Amazon Selling Partner API and Walmart Marketplace API, allowing customers to see all their data in one place.
- Moved the existing pipeline from a Google virtual machine (VM) to Google Cloud Functions, reducing costs by 90% and making the deployment scalable.
- Developed an automated system to trigger Google Functions using Google Cloud Scheduler and Google Pub/Sub.
- Added error logging from Google Cloud Functions to Slack, allowing developers to become aware of problems immediately.
- Used Pandas to clean, filter, and aggregate data before loading it to BigQuery.
- Modularized the program, reducing code duplication by over 70%.
Python Developer
Cerm
- Developed a REST API using Python to access the client's SQL Server database.
- Used the Eve framework for Python to simplify API design, allowing the team to maintain and extend the API with only a basic knowledge of Python and APIs.
- Described the REST API using OpenAPI Specification to allow testing with Postman and documenting with Swagger.
- Created integration tests to ensure that the API functioned as expected.
Lead Software Engineer
APIMATIC
- Managed the team responsible for APIMatic's Code Generation Engine, which powers SDKs deployed by dozens of API providers and used by thousands of developers.
- Divided the core team’s yearly tasks into fortnightly sprints to ensure that monthly deadlines were met using Jira.
- Added XML parsing to Python and Ruby SDKs to support REST APIs that transfer data using XML.
- Integrated Bitbucket, Jenkins, and Myget to automate the testing and deployment of the code generation project.
- Managed monthly and quarterly deliveries for enterprise customers such as Bandwidth and Sabre Corporation.
- Onboarded two new members to the core team, one for Java and one for C#.
- Trained two members of the core team to perform code reviews.
- Collaborated with members of the sales team to help them better understand the product's technical details, improving their communication with customers.
- Performed code reviews of changes to the code generator and the auto-generated Python, Ruby, C#, and Java SDKs.
Solutions Engineer
APIMATIC
- Communicated with 120+ customers based in 20+ countries across five continents to learn about the different ways that REST APIs are being developed and used across the globe.
- Delivered demos to prospective customers using Google Meet.
- Designed version 3 of APIMatic’s auto-generated SDKs using customer feedback.
- Assisted the support team to better understand customer issues, decreasing the average time for support ticket resolution by 50%.
Software Engineer
APIMATIC
- Managed code generation of Python, Ruby, Java, and C# SDKs for REST APIs.
- Tracked and fixed bugs using Jira for reporting and tracking.
- Wrote changelogs for bug fixes and feature additions to keep users informed of SDK changes.
- Made Python and Ruby SDKs compliant with style guides.
- Updated the CI/CD cycle to add checks for Ruby and Python SDK code compliance.
- Added support for OAuth 2.0 Password Grant to Ruby and Python SDKs.
- Updated Java SDKs to use the OkHttp library instead of Unirest to improve performance.
- Implemented a generator for the Python code samples displayed on APIMatic’s Developer Experience Portal.
Experience
Version 3 of APIMatic's SDKs
I designed the SDKs for C#, Java, Python, and Ruby and also implemented code generation for the new Python and Ruby SDKs. These SDKs are being used in production by leading companies, such as Bandwidth (https://www.bandwidth.com/) and Sabre Corporation (https://www.sabre.com/).
CI/CD Improvements for Jenkins
I implemented a custom caching solution that eliminates the need to test SDKs that have not changed since the last build, resulting in the time for each build to be reduced to fifteen minutes on average, resulting in less time to delivery.
Code Sample Generator for Python
I used C# to implement a generator for the Python code samples displayed for each endpoint, generated based on the input API specification information. These work with APIMatic's Python SDKs (which can be downloaded from the same link) and make getting started with API consumption a breeze for consumers.
Education
Bachelor's Degree in Software Engineering
National University of Sciences and Technology - Islamabad, Pakistan
Skills
Libraries/APIs
REST APIs, Pandas, Auth, Amazon API, Walmart API, Slack API, Amazon Product Advertising API, OpenAPI, SQLAlchemy, Jira REST API, PySpark, Google Drive API, Google Sheets API, NumPy
Tools
PyCharm, Git, Jenkins, Postman, Jira, Bitbucket, Slack, GitHub, Visual Studio, cURL Command Line Tool, Apache Maven, Pytest, Logging, Terraform
Languages
C#.NET, Python, C#, Python 3, Java, SQL, Ruby, Liquid Template, XML, JavaScript, HTML, CSS
Frameworks
.NET, Swagger, OAuth 2, JSON Web Tokens (JWT), .NET Core, Windows PowerShell, Flask, Unity, Unity3D, Spark
Paradigms
REST, RESTful Development, Agile Software Development, Agile, Automation, ETL, Design Patterns, DevOps
Storage
JSON, Microsoft SQL Server, Databases, Google Cloud, PostgreSQL, MySQL, Datadog
Platforms
Google Cloud Platform (GCP), Windows, Visual Studio Code (VS Code), Eclipse, Docker, Databricks, PagerDuty
Other
Algorithms, API Documentation, APIs, JSON REST APIs, SDKs, Google Cloud Functions, Google BigQuery, CSV, API Integration, API Design, Automation Scripting, Scripting, Software Engineering, Integration, Data Structures, Team Management, Code Review, Code Generators, OAuth, User Authentication, Eve, CI/CD Pipelines, Back-end, Team Mentoring, Leadership, Mentorship & Coaching, Mentorship, PIP, Source Code Review, Interviewing, Technical Hiring, Task Analysis, Software Development, Software Project Management, Quality Assurance (QA), Software Development Lifecycle (SDLC), Operating Systems, Customer Support, Product Demonstrations, Groovy Scripting, Serverless, Software Architecture
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