
Nikhil Dabas
Verified Expert in Engineering
Operations Engineer and Software Developer
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 15 years of professional experience, Nikhil has been hacking and programming for far longer than that.
Portfolio
Experience
- Linux - 15 years
- C# - 15 years
- .NET - 15 years
- Amazon Web Services (AWS) - 15 years
- Node.js - 6 years
- Raspberry Pi - 6 years
- Windows PowerShell - 5 years
- Windows Installer - 4 years
Preferred Environment
Amazon Web Services (AWS), Git, Visual Studio Code (VS Code), Windows, C#, Node.js, Python, Windows PowerShell
The most amazing...
...programs I've written generate and compile new programs themselves, requiring zero programming knowledge on the client side.
Work Experience
Senior Build Automation Engineer
Clockwork Dog
- Streamlined the CI/CD system to allow developers to build firmware locally, which was previously built only in GitHub Actions.
- Tracked down the source of long-standing build failures, specifically related to the build and flash of firmware used for automated testing of devices.
- Provided inputs on improving and maintaining code quality, and adding automated checks in the build process towards that goal.
Open-source Legal Assessment Expert
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 codebases without access to the source code.
- Helped build an industry-leading polyglot scanner for the aforementioned static analysis, which can process dozens of languages, tools, and frameworks.
- Designed, architected, and built system integration with Salesforce using various Salesforce APIs, including SOAP, REST, and Streaming.
Windows Developer
Raspberry Pi
- Developed a Windows port and installer for the Raspberry Pi Pico microcontroller, which was subsequently released as a personal open-source project on GitHub. Raspberry Pi later recognized this project and incorporated it as its 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.
- Ensured compatibility of the installed SDK with Bazel-based builds (via the Pigweed SDK).
Windows Installer Developer
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.
ETL and Big Data Architect and Developer
Energy Industry Client
- Architected and developed data ingestion processes to extract data from diverse sources. These sources included independent system operators (ISOs), the Environmental Protection Agency (EPA), and various 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.
Lead Architect, Full-stack Developer, DevOps
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.
Lead Architect, Full-stack Developer, DevOps
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.
Lead Front-end Developer and DevOps
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.
- Identified and rectified security and quality issues proactively with static code analysis tools, ensuring robust and secure software.
- Designed the back end for Bluetooth wireless communication with sensors.
Lead AWS Architect and DevOps
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.
Chief Software Architect and Consultant
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.
- Designed and built devices for task-specific use like kiosks, display boards, and POS systems, with Yocto/Poky, Raspberry Pi, Intel Edison, and Windows Embedded.
- Architected and built IVR systems for ad campaigns, with real-time 'conversational' decision making and speech recognition to guide the flow.
.NET Developer and Code Reviewer
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.
Software Architect and DevOps
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.
Software Architect, DevOps, InfoSec Consultant
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.
Chief Technology Officer
TechnoApex Software Pvt. Ltd.
- Built an online, self-service, point-of-sale (POS) application tailored to the food and beverage industry. This was built from the ground up, completely in-house.
- Integrated POS software with various peripherals over local connections (RS232 and USB) and over networks using various proprietary protocols for printers, cash drawers, customer displays, etc.
- Deployed POS systems using industry-specific terminals and hardware, with custom OS and application images, remote updates, and management.
- 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.
- Assembled a WordPress-based platform designed for building and rapidly deploying bespoke small-business websites.
Experience
Raspberry Pi Pico SDK Setup for Windows
https://github.com/raspberrypi/pico-setup-windowsThe 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.
WhatDidIBuy | Inventory Consolidation Tool
https://github.com/ndabas/WhatDidIBuyThe 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.
Table of Contents | jQuery Plugin
https://github.com/ndabas/tocThe 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.
Breaking Breadboards
https://breakingbreadboards.com/Education
Bachelor's Degree in Computer Science
University of Delhi - Delhi, India
Certifications
Professional Scrum Master I (PSM I)
Scrum.org
Skills
Libraries/APIs
jQuery, Node.js, Windows Forms (WinForms), AWS Amplify, Puppeteer, Microsoft Foundation Classes (MFC), Entity Framework, REST APIs, LINQ, STM32Cube, Salesforce API, Salesforce SOAP API, Salesforce REST API, Mbed TLS
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 (ECS), Jenkins, Make (formerly Integromat), Makefile, GNU Make, Bazel, CMake, GIS, Eclipse IDE, STM32CubeIDE, Terraform, Microsoft Excel, Amazon Simple Queue Service (SQS), Amazon Simple Email Service (SES), Amazon Simple Notification Service (SNS), Amazon CloudWatch, AWS IAM, VPN, AWS Step Functions, Zephyr
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, Pico, Embedded C++, Embedded C, MicroPython, Excel VBA, VB, BASIC
Frameworks
Angular, .NET, ASP.NET, AngularJS, ASP.NET MVC, Windows PowerShell, .NET Core, Bootstrap, Ionic, Presto, gRPC, Windows Presentation Foundation (WPF), .NET 4, .NET 2, .NET 3, Entity Framework Core
Paradigms
Serverless Architecture, DevOps, Metaprogramming, Agile Project Management, Scrum, Automation, REST, Microservices, Microservices Architecture, ETL, Back-end Architecture, Socket Programming, HIPAA Compliance
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, Embedded Linux, STM32, Arduino, Amazon EC2, Salesforce, Windows Server
Storage
Amazon DynamoDB, Microsoft SQL Server, MySQL, Elasticsearch, PostgreSQL, Apache Hive, Polyglot Persistence, Databases, Data Pipelines, Amazon S3 (AWS S3), JSON
Other
Installer Technologies, Unix Shell Scripting, Electronic Data Interchange (EDI), Serverless, AWS DevOps, Virtualization, Embedded Systems, Electronics, Microcontrollers, Wamp, Windows Services, Raspberry Pi Pico, 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 and Response (TDR), Vulnerability Assessment, GitHub Actions, Dependabot, Command-line Interface (CLI), Yocto, ARM Embedded, Embedded Hardware, Embedded Software, QNX, Nix, Atmel AVR, Pigweed, Amazon API Gateway, SOAP, .NET Framework, Internet of Things (IoT), Wireless Communication, Bluetooth, Sensors & Actuators, Micro Sensors, I2C, Real-time Operating System (RTOS), Universal Asynchronous Receiver/Transmitter (UART), Reverse Engineering, Firmware, Device Firmware Updates (DFU), POS, Point of Sale, Architecture, Server-side PDF Generation, Async/Await, Documentation, Form Design, User Experience (UX), User Experience Design, User Interface (UI), Drag & Drop, Large Language Models (LLMs), Back-end Development, Software Architecture, APIs, Bluetooth Low Energy (BLE), Serial Communication, TCP/IP, STM32CubeMX, Excel Macros, FreeRTOS, Robotics, Sensor Fusion, Amazon EventBridge, Monitoring, AWS Secrets Manager, Amazon RDS, Cloud Architecture, ETL Pipelines, SOC 2, SOC Compliance, Reporting, Reports, Salesforce CLI, Email, Mbed, Legacy Software, Legacy Code, IIS, Embedded Development, Hardware Integration, GUI Development, Audio, Audio Streaming, Real-time Audio Processing, Interactive Voice Response (IVR), Speech Recognition, ARM
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