Kaushal Shah, Developer in Bengaluru, Karnataka, India
Kaushal is available for hire
Hire Kaushal

Kaushal Shah

Verified Expert  in Engineering

Software Developer

Bengaluru, Karnataka, India

Toptal member since August 29, 2022

Bio

Kaushal is an enthusiastic software engineer with more than 4.5 years of professional experience writing high-performance software using Python and Go. He has extensive expertise in data structures and algorithms. Kaushal is a fast learner and likes to work on challenging problems.

Portfolio

InfraCloud Technologies
Agile Software Development, Amazon S3 (AWS S3), Go, RabbitMQ, PostgreSQL...
Crest Data Systems
Python, Docker, MongoDB, Celery, FastAPI, RabbitMQ, OAuth 2, Pytest, Git, Jira...

Experience

  • Python - 4 years
  • Go - 4 years
  • Docker - 3 years
  • PostgreSQL - 3 years
  • RabbitMQ - 3 years
  • Redis - 1 year
  • gRPC - 1 year
  • MongoDB - 1 year

Availability

Part-time

Preferred Environment

Python, Go, RabbitMQ, Redis, gRPC, PostgreSQL, MongoDB, Docker, Pytest, Apache Kafka

The most amazing...

...system I've built is the network security platform that enables threat intel sharing, automated service ticket workflows, and periodic log exports.

Work Experience

Software Engineer

2021 - PRESENT
InfraCloud Technologies
  • Worked with a US-based early-stage startup and developed a Go-based SaaS platform for mineral management that provides complete visibility into mineral owners' portfolios and ensures royalty payments for the assets they own.
  • Built and set up a complete CI/CD pipeline using bitbucket.
  • Worked closely with the co-founders to define concrete requirements, back-end architecture, and end-to-end testing, deployment, and documentation strategies.
  • Learned and integrated various third-party cloud services like Auth0, Postmark, AWS S3, and Snowflake.
  • Built positive working relationships with the client, resulting in customer referrals. I also won a customer delight award.
Technologies: Agile Software Development, Amazon S3 (AWS S3), Go, RabbitMQ, PostgreSQL, OAuth 2, REST, gRPC, Git, Bitbucket, Jira, Visual Studio Code (VS Code), Postman

Senior Software Engineer

2018 - 2021
Crest Data Systems
  • Developed a standalone platform to exchange network events and alerts between network security products, namely Firewall and third-party SIEM, ITSM tools, and threat sources. Around 1.000 organizations are currently using this.
  • Created three independent modules for various use cases, including log exporter, ticket orchestrator, and threat Intel exchanger.
  • Set up a complete CI/CD pipeline using Bamboo server and Bitbucket.
  • Led a team of three engineers to develop integration plugins for various modules on top of the core platform. Followed Agile software development and defined technical requirements, code reviews, documentation, and feature development.
  • Built multiple automation tools used by engineers and testers across the organization, including a REST API mocking tool and timesheet entry automation based on Jira ticket statuses.
Technologies: Python, Docker, MongoDB, Celery, FastAPI, RabbitMQ, OAuth 2, Pytest, Git, Jira, Bamboo, Visual Studio Code (VS Code), Jenkins, Bitbucket, SourceTree, REST

Experience

Cloud Exchange

Cloud Exchange is a security analytics and response platform that can exchange network events and alerts between security products and third-party SIEM, ITSM tools, and threat sources available on the cloud.

Developed three independent modules from scratch that support the following use cases:
• Log Exporter forwards network logs to SIEMs like Splunk and Rapid7 to extract analytics.
• Ticket Orchestrator creates notifications and tickets on ITSM and collaboration tools like Jira, ServiceNow, and Slack based on business rules.
• Threat Intel exchanger shares threat information between threat sources and periodically enriches the platform's threat database with the latest information.

I also developed a plugin-based architecture that efficiently exchanges data via multi-threading for all modules. I also adhered to OOP and SOLID principles to significantly reduce code maintenance and make adding new modules and plugins easier. Also developed multiple plugins for each module.

Used FastAPI for creating REST API endpoints, OAuth2.0 for user authentication, Celery to schedule periodic tasks using multiprocessing, MongoDB to persist the threat details, Docker for easy deployment, and PyTest for unit tests.

REST API Mocking Tool

Developed a CLI-based REST API mocking tool that allows users to mock any endpoint with preferred response body, response headers, status code, HTTP method, and response delay.

Used FastAPI to create REST endpoints and MongoDB for persistence. Manual testers mainly used this to test the application's behavior in various organizational scenarios.

Mineral Management Software

Developed a Go-based SaaS platform for mineral management that provides complete visibility into mineral owners' portfolios and ensures royalty payments for the assets they own. This cuts the manual management of mineral rights by 70% and provides real-time visibility.

Developed the following microservices from scratch:
• User service for user authentication and management.
• File service to facilitate file uploads and downloads.
• Workflows service for implementing asynchronous workflows for parsing and structuring user input files.

Used gRPC to communicate between microservices, PostgreSQL for persistence, OAuth2.0 for user authentication, AWS S3 for object storage, RabbitMQ for asynchronous processing, and Docker for deployment.

Education

2014 - 2018

Bachelor's Degree in Computer Engineering

Nirma University - Ahmedabad, Gujarat, India

Skills

Tools

Pytest, RabbitMQ, Celery, Git, Jira, Bamboo, Jenkins, Bitbucket, SourceTree, Postman

Languages

Python, Go, Java

Paradigms

Agile Software Development, REST

Platforms

Docker, Visual Studio Code (VS Code), Apache Kafka

Storage

PostgreSQL, Databases, Redis, MongoDB, Amazon S3 (AWS S3)

Frameworks

gRPC, OAuth 2

Other

Algorithms, Data Structures, FastAPI, Multithreading, Multiprocessing

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