Nikhil Dabas, Developer in Brighton, United Kingdom
Nikhil is available for hire
Hire Nikhil

Nikhil Dabas

Verified Expert  in Engineering

Operations Engineer and Software Developer

Location
Brighton, United Kingdom
Toptal Member Since
July 2, 2013

Nikhil is a software developer and operations engineer. He enjoys interesting and challenging projects that let him design and build elegant solutions to the problems at hand. With more than 12 years of professional experience, Nikhil has been hacking and programming for far longer than that.

Portfolio

Sema Technologies, Inc
Python, Copyright, Cppcheck, Threat Intelligence, Static Analysis, Docker, Java...
Raspberry Pi
NSIS, Windows PowerShell, Embedded Systems, Microcontrollers, SDKs...
Data Science and Analytics Client
Windows, Installer Technologies, InstallAware, Windows Installer...

Experience

Availability

Part-time

Preferred Environment

Amazon Web Services (AWS), Git, Visual Studio Code (VS Code), Windows, C#, Node.js

The most amazing...

...programs I've written generate and compile new programs themselves, requiring zero programming knowledge on the client side.

Work Experience

Open-source Legal Assessment Expert

2023 - PRESENT
Sema Technologies, Inc
  • Architected parts of and developed code for automated, static analysis of code quality, especially in the context of open-source dependencies, their licenses and license compatibility, and potential vulnerabilities.
  • Contributed to an open-source component for securely scanning customer code bases without access to the source code.
  • Contributed to an industry-leading polyglot scanner for the aforementioned static analysis, with the ability to process dozens of languages, tools, and frameworks.
Technologies: Python, Copyright, Cppcheck, Threat Intelligence, Static Analysis, Docker, Java, Shell, Dependency Analysis, Licensing, Open-source Software (OSS), Threat Detection, Vulnerability Assessment, GitHub, GitHub Actions, Dependabot, Docker Compose, Amazon Web Services (AWS), Amazon Elastic Container Service (Amazon ECS), AWS Lambda, CI/CD Pipelines, Jenkins

Freelance Windows Developer

2022 - 2023
Raspberry Pi
  • Developed a Windows port and installer for the Raspberry Pi Pico microcontroller, subsequently released as a personal open-source project on GitHub. This project was later recognized by Raspberry Pi and incorporated as their official release.
  • Produced Windows builds and tested the toolchain, debugger, and SDK for Pico, including OpenOCD.
  • Worked on testing the new and then-unreleased Pico Debug Probe on Windows.
  • Automated build and test processes using CI/CD on GitHub Actions and Docker for Windows.
Technologies: NSIS, Windows PowerShell, Embedded Systems, Microcontrollers, SDKs, Windows Installer, Raspberry Pi, Open On-Chip Debugger (OpenOCD), CI/CD Pipelines, C, C++, Microcontroller Programming, Metaprogramming, Hardware, Electronics, GitHub, GitHub Actions

Windows Installer Developer

2021 - 2021
Data Science and Analytics Client
  • Architected and developed a code-generation tool that facilitated the company's migration from its legacy installer, previously based on InstallAware, to the Windows Installer, also known as MSI.
  • Developed a domain-specific language (DSL) using PowerShell, simplifying the migration and testing of the installer.
  • Led a compact team focused on enhancing performance, conducting tests, and deploying using CI/CD in GitLab.
  • Built internal tooling to enhance development speed using Docker on Windows, PowerShell, and NSIS.
Technologies: Windows, Installer Technologies, InstallAware, Windows Installer, Windows PowerShell, GitLab CI/CD, Perl, Wix Installer, XML, Code Generators, Docker, Domain-specific Languages (DSLs), NSIS, DevOps, Metaprogramming, Virtualization, C++, gRPC, Windows Services, Microsoft Foundation Classes (MFC), Windows Forms (WinForms), Windows Presentation Foundation (WPF), Win32

ETL and Big Data Architect and Developer

2019 - 2021
Energy Industry Client
  • Architected and developed data ingestion processes to extract data from diverse sources. These sources included energy independent system operators (ISO), the Environmental Protection Agency (EPA), and a variety of other government agencies.
  • Oversaw and tracked the daily ingestion of hundreds of gigabytes of data on AWS services such as S3, EC2, ECR, and SQS.
  • Built, tested, and deployed tools and scripts using Pulumi for infrastructure as code (IaC), along with Bash and PowerShell scripts, complemented by Docker containers.
  • Managed big data repositories utilizing Amazon Athena, Apache Hive, and Presto.
Technologies: SQL, Linux, XML, Amazon Web Services (AWS), Shell, Bash, Windows PowerShell, Pulumi, Infrastructure as Code (IaC), Docker, Amazon Athena, Presto, AWS Lambda, Serverless, Apache Hive, Electronic Data Interchange (EDI), Unix Shell Scripting, DevOps, AWS DevOps, XSL, XSLT

Lead Architect, Full-stack Developer and DevOps

2018 - 2018
CSIRO Australia
  • Collaborated closely with the CTO, architecting the entire application encompassing back end, front end, deployment, testing procedures, and developer workflows.
  • Constructed a robust back end using AWS Serverless Application Model (SAM), Node.js, and ServiceStack on .NET Core, showcasing design and development skills.
  • Crafted the application's front end using Angular, focusing on asset pipelines.
  • Automated deployment and test procedures by creating dedicated scripts and tools.
  • Authored scripts to streamline the setup of developer environments.
  • Engaged in pair programming with the CTO, critically assessing and refining architectural decisions.
Technologies: Amazon Web Services (AWS), Angular, Node.js, C#, .NET Core, Serverless, AWS DevOps, DevOps, AWS Amplify, Bootstrap, TypeScript, JavaScript, Amazon DynamoDB, MySQL, Apache2

Lead Architect, Full-stack Developer and DevOps

2017 - 2018
Education Industry Client
  • Led the architecture, construction, and deployment of a comprehensive application from inception to completion.
  • Built a robust back end for the application, leveraging AWS Serverless architecture components such as Lambda, API Gateway, DynamoDB, and S3.
  • Crafted an intuitive front end for the application using Angular and Ionic.
  • Streamlined the deployment of the entire stack, employing CloudFormation for automation.
Technologies: Amazon Web Services (AWS), Ionic, Angular, Node.js, Serverless, DevOps, AWS DevOps, AWS Amplify, JavaScript, Apache2

Lead Front-end Developer and DevOps

2016 - 2016
Medical Industry Client
  • Spearheaded the design and construction of a client-specific front-end application from the ground up.
  • Architected and implemented a mini-GIS solution using GeoJSON storage and Leaflet for optimal display.
  • Conceived and executed a data visualization solution leveraging Elasticsearch, Logstash, and Kibana.
  • Streamlined the deployment and scaling process of the Elasticsearch stack through Docker on AWS, enhancing efficiency.
  • Ensured adherence to HIPAA-compliant processes for managing deployments, securing data access, and maintaining high data privacy standards.
  • Proactively identified and rectified security and quality issues with static code analysis tools, ensuring robust and secure software.
Technologies: Amazon Web Services (AWS), Docker, Logstash, Kibana, Elasticsearch, AngularJS, DevOps, AWS DevOps, JavaScript, MySQL

Lead AWS Architect and DevOps

2015 - 2016
Telecommunications Industry Client
  • Architected, developed, and deployed a comprehensive solution on AWS.
  • Pioneered a serverless solution using AWS Lambda during its early stages, overcoming numerous production environment challenges.
  • Automated the deployment and testing processes of the application, enhancing efficiency and accuracy.
  • Modularized the solution, enabling seamless deployment across various environments such as UAT, production, and testing.
Technologies: PostgreSQL, Node.js, AWS Lambda, Serverless Architecture, AWS DevOps, DevOps, Virtualization, JavaScript, MySQL

Chief Software Architect and Consultant

2011 - 2016
NikSci
  • Contributed significantly to Twitter Bootstrap and AngularJS projects on GitHub.
  • Crafted numerous Windows applications from the ground up, designed to generate customized Windows and Mac applications, and compile these into a distribution-ready format, complete with user-friendly installer apps.
  • Transformed a custom-designed website to leverage Twitter Bootstrap as a CSS foundation, simultaneously migrating the entire website and blog from an in-house CMS to Jekyll, a static site generator.
  • Deployed various websites and applications to diverse cloud platforms such as AWS, Google App Engine, Heroku, and Rackspace Cloud, working with operating systems like Windows, Debian Linux, and Red Hat Enterprise Linux.
  • Constructed several line-of-business web applications, including a custom real-estate analysis and profit estimation tool, ensuring high accessibility for users of all computer proficiency levels.
  • Authored dozens of Unix shell, Windows PowerShell, and Node.js scripts to automate repetitive tasks, including bulk messaging via email and SMS and directory organization based on Excel file information.
  • Built multiple EDI applications to convert data, such as invoices, between industry-standard and proprietary XML and flat-text formats, implementing these as fault-tolerant Windows services.
Technologies: Windows PowerShell, Jekyll, CSS, Node.js, C#, .NET, ASP.NET, Amazon Web Services (AWS), Linux, Bash, WordPress, Electronic Data Interchange (EDI), Google Cloud Platform (GCP), Adobe Photoshop, Subversion (SVN), Visual Basic, Visual Basic for Applications (VBA), PHP, MySQL, Virtualization, JavaScript, Windows Forms (WinForms), Windows Presentation Foundation (WPF)

.NET Developer and Code Reviewer

2015 - 2015
Mining Industry Client
  • Conducted an in-depth review of the client's legacy system, focusing on mathematical modeling and optimization of mining operations.
  • Built a robust back end for the software, enabling the generation, execution, and resolution of mixed-integer linear programming problems based on user-provided parameters.
  • Established a .NET-to-Java bridge within the software, ensuring seamless integration with a solver engine exclusively available via a Java API.
  • Transformed significant portions of the software from spaghetti code to testable modular code, effectively re-architecting the system from the ground up.
Technologies: Programming, .NET, C#, Windows Forms (WinForms), Windows Presentation Foundation (WPF), Windows Desktop, Java Development Kit (JDK)

Software Architect and DevOps

2015 - 2015
Agriculture Industry Client
  • Containerized the company's flagship web application using Docker, enhancing deployment ease and scalability.
  • Built AWS CloudFormation templates, facilitating the deployment of the Docker app to Elastic Beanstalk and Amazon RDS.
  • Engineered automation to bolster CI/CD workflows, streamlining the process from the source code repository to deployed apps on AWS.
Technologies: Amazon Web Services (AWS), Docker, Infrastructure as Code (IaC), AWS CloudFormation, AWS Elastic Beanstalk, DevOps, AWS DevOps, Virtualization, MySQL

Software Architect, DevOps, and InfoSec Consultant

2013 - 2015
NikSci
  • Architected a comprehensive system to manage the daily operations of a real estate firm specifically designed to operate on Microsoft Azure.
  • Crafted the system using C#, ASP.NET MVC, and SQL Server, ensuring robust functionality and seamless integration.
  • Deployed the system to Azure Virtual Machines, Azure App Service, Azure SQL Database, and Azure Storage, optimizing for performance and scalability.
  • Engineered automation for code quality checks and deployment to Azure from the source code repository, enhancing efficiency and reliability.
  • Established automated periodic security audits, incorporating proactive threat detection and personally identifiable information (PII) and data security to uphold stringent security standards.
  • Built a software release pipeline for an entertainment industry client, enabling automatic testing, packaging into an installer using NSIS, installer testing, and software release upon successful checks.
  • Created an Excel add-in for a mathematics research group and developed tools to empower them to package and release the tool independently by automatically compiling an MSI installer for the software.
Technologies: C#, Microsoft SQL Server, ASP.NET MVC, Azure, DevOps, AWS DevOps, PHP, Visual Basic 6 (VB6), Hyper-V, Virtualization, JavaScript, MySQL, Wamp, Apache2, LAMP, Windows Forms (WinForms), Windows Presentation Foundation (WPF)

Chief Technology Officer

2007 - 2011
TechnoApex Software Pvt. Ltd.
  • Built an SMS-based targeted mobile advertising network, managed entirely through an ASP.NET web application supported by an SQL Server database.
  • Created a self-service bulk text messaging application incorporating a web app and Windows and Mac desktop app components.
  • Established an online, self-service, point-of-sale application tailored to the food and beverage industry.
  • Assembled a WordPress-based platform designed for building and rapidly deploying bespoke small-business websites.
Technologies: WordPress, SQL, .NET, Virtualization, JavaScript, MySQL, Wamp, Apache2, LAMP

Table of Contents | jQuery Plugin

https://github.com/ndabas/toc
I developed a streamlined jQuery plugin known as jquery.toc designed to generate a table of contents by leveraging the headers on a webpage. This plugin is characterized by its minimalistic design, ensuring a user-friendly experience.

The table of contents generated by this plugin is semantically structured, utilizing nested lists ("ul" or "ol"). These lists are equipped with hash-link anchors, providing direct links to the page's corresponding headings, thereby enhancing users' navigation experience.

WhatDidIBuy | Inventory Consolidation Tool

https://github.com/ndabas/WhatDidIBuy
WhatDidIBuy is a Node.js-based application that leverages the power of web scraping to consolidate inventory data. The application is designed to streamline the process of inventory management for electronics distributors and stockists. It can integrate data from multiple sources, including industry leaders such as Digi-Key, Mouser, Arrow, Adafruit, and SparkFun.

The core functionality of WhatDidIBuy is powered by the Puppeteer library, a robust tool for web scraping. By harnessing the capabilities of Puppeteer, the application can efficiently extract, process, and consolidate inventory data from various online platforms. This feature simplifies inventory management and provides a comprehensive overview of the available stock, facilitating informed decision-making.

Raspberry Pi Pico SDK Setup for Windows

https://github.com/raspberrypi/pico-setup-windows
This is an open-source project I initially embarked on for my improvement. It is a Windows installer, meticulously crafted using NSIS and PowerShell, designed to install the Raspberry Pi Pico SDK on Windows. The installer also incorporates the necessary toolchains, compilers, debugger, and SDK tooling, providing a complete setup for users.

The project's success lies in its seamless integration of various components. Using Windows PowerShell and NSIS allowed me to create a robust and efficient installer. Furthermore, my knowledge of Windows Installer and CI/CD pipelines ensured the project's smooth execution and deployment.

The recognition from Raspberry Pi was an unexpected but welcome validation of the project's utility and my technical prowess. In essence, this project reflects my ability to create practical solutions that cater to the needs of the wider tech community.

Languages

JavaScript, C#, XML, XSL, XSLT, PHP, C, C++, TypeScript, Visual Basic 6 (VB6), CSS, SQL, Perl, Visual Basic for Applications (VBA), Visual Basic, Bash, Domain-specific Languages (DSLs), Python, Java

Frameworks

Angular, .NET, ASP.NET, AngularJS, ASP.NET MVC, Windows PowerShell, .NET Core, Bootstrap, Ionic, Presto, gRPC, Windows Presentation Foundation (WPF)

Libraries/APIs

jQuery, Node.js, Windows Forms (WinForms), AWS Amplify, Puppeteer, Microsoft Foundation Classes (MFC)

Tools

NSIS, Git, Wix Installer, Windows Installer, Hyper-V, Jekyll, Adobe Photoshop, Subversion (SVN), Kibana, Logstash, Shell, Amazon Athena, GitLab CI/CD, AWS CloudFormation, Cppcheck, Java Development Kit (JDK), GitHub, Docker Compose, Amazon Elastic Container Service (Amazon ECS), Jenkins

Paradigms

Serverless Architecture, DevOps, Metaprogramming, Agile Project Management, Scrum

Platforms

Amazon Web Services (AWS), Windows, Linux, AWS Lambda, Raspberry Pi, Windows Desktop, Win32, Google Cloud Platform (GCP), Azure, Docker, Apache2, LAMP, WordPress, Visual Studio Code (VS Code), AWS Elastic Beanstalk

Storage

Amazon DynamoDB, Microsoft SQL Server, MySQL, Elasticsearch, PostgreSQL, Apache Hive

Other

Installer Technologies, Unix Shell Scripting, Electronic Data Interchange (EDI), Serverless, AWS DevOps, Virtualization, Embedded Systems, Electronics, Microcontrollers, Wamp, Windows Services, Programming, InstallAware, Microcontroller Programming, Hardware, Pulumi, Infrastructure as Code (IaC), Code Generators, SDKs, Open On-Chip Debugger (OpenOCD), CI/CD Pipelines, Computer Science, Algorithms, Digital Electronics, Web Scraping, Copyright, Threat Intelligence, Static Analysis, Dependency Analysis, Licensing, Open-source Software (OSS), Threat Detection, Vulnerability Assessment, GitHub Actions, Dependabot

2003 - 2006

Bachelor's Degree in Computer Science

University of Delhi - Delhi, India

SEPTEMBER 2019 - PRESENT

Professional Scrum Master I (PSM I)

Scrum.org

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