Abhinav Gupta, Developer in Gurugram, Haryana, India
Abhinav is available for hire
Hire Abhinav

Abhinav Gupta

Verified Expert  in Engineering

Salesforce Apex Developer

Location
Gurugram, Haryana, India
Toptal Member Since
September 1, 2014

Abhinav is a Salesforce architect, eight times Salesforce Most Valuable Professional (MVP), blogger, open-source enthusiast, speaker for Salesforce and Dreamforce, and author of a Salesforce book. He excels with all Salesforce customizations, API integrations, and advanced development with Lightning, Visualforce, Apex, Communities, or AppExchange Apps from a stronghold of sensible UX delivery and business problem-solving.

Portfolio

Freelance
SQL, Salesforce SOAP API, SOAP, Bootstrap 3, Git, Salesforce...
Simplion Technologies
SQL, Salesforce SOAP API, SOAP, jQuery UI, Bootstrap 3, Salesforce...
Metacube Software Pvt Ltd
SQL, Salesforce SOAP API, SOAP, jQuery UI, Salesforce, Salesforce REST API...

Experience

Availability

Part-time

Preferred Environment

Git, SourceTree, GitHub, MacOS, Visual Studio Code (VS Code)

The most amazing...

...contributions I've been delivering in the software world are communication and UX: a proactive communication style and my taste for UX are key to work remotely.

Work Experience

Independent Salesforce Developer and Architect

2013 - PRESENT
Freelance
  • Delivered some of the largest Salesforce customizations and apps since 2008, like FinancialForce PSA, Kenandy ERP in apps, and the implementation of Amazon in the UAE.
  • Provided a solid taste for the UX and know-how to use the right tools to deliver amazing and intuitive UI in Salesforce using standard SLDS like the Salesforce Lightning Design System.
  • Acted as a Lightning components expert: Was among the first few to deliver Aura component projects in 2015, took the lead in LWC, and delivered multiple solutions and apps using it.
  • Worked with 20+ ISV partners to transform their ideas into AppExchange apps, get security review cleared, and maintain a healthy roadmap.
  • Demonstrated experience in Salesforce data modeling for scale and performance. Delivered data architecture that avoided rework and frustrations in later stages of the roadmap.
  • Delivered more than 30 integrations with popular SAAS and PAAS like Google—Calendar, Drive, Contacts, Maps, Geocoding, Places, Tasks—, AWS, Quickbooks, Twilio, and more.
  • Shared experiences around Salesforce and cloud computing through two dedicated Salesforce blogs: http://salesforce.abhinav.fyi and https://www.concret.io/author/aflat/.
  • Authored many popular Salesforce open-source repositories, some of them featured in many Salesforce books and blogs, available on https://github.com/abhinavguptas/.
  • Spoke at many international—Dreamforce, Dreamin—and domestic—Salesforce DUG—meet-ups. Some of these presentations are available at https://www.slideshare.net/abhinavguptas/.
  • Set up Salesforce products' delivery processes and implementation using the best Salesforce practices for DevOps and multiple team members. I'm leading a team of two to 15 developers, QA, and analysts across multiple Salesforce projects since 2009.
Technologies: SQL, Salesforce SOAP API, SOAP, Bootstrap 3, Git, Salesforce, Salesforce REST API, Salesforce API, JavaScript, Salesforce Lightning, OAuth, JSON, REST, HTML5, jQuery, Bootstrap, AngularJS, Visualforce, Apex, Salesforce 1

Salesforce Architect

2011 - 2013
Simplion Technologies
  • Increased Simplion's Salesforce development team from 5 members to 40+ developers in under 2 years.
  • Was involved in pre-sales calls with the sales team.
  • Handled scoping and estimations for various projects.
  • Trained Java engineers in Salesforce.
  • Delivered 3 AppExchange apps as an architect and developer.
Technologies: SQL, Salesforce SOAP API, SOAP, jQuery UI, Bootstrap 3, Salesforce, Salesforce REST API, Salesforce API, JavaScript, Salesforce Lightning, OAuth, JSON, REST, jQuery, HTML5, Triggers, Visualforce, Apex

Team Lead

2005 - 2011
Metacube Software Pvt Ltd
  • Started as a developer and worked on various JEE projects on domains like supply chain management.
  • Started learning and working on the Salesforce platform in 2008.
  • Developed 4 AppExchange apps for the client Appirio in the US.
  • Worked as the India Team lead, communicating with Appirio's Product Team and delivering various apps such as PSA and Cloudfactor.
Technologies: SQL, Salesforce SOAP API, SOAP, jQuery UI, Salesforce, Salesforce REST API, Salesforce API, JavaScript, Salesforce Lightning, OAuth, JSON, REST, jQuery, HTML5, Triggers, Visualforce, Apex, JEE, Java

Technical Team Member

2004 - 2005
Pratham Software Pvt Ltd
  • Developed various Java and JEE projects.
  • Developed a charting application to show rich charts based on exported data.
  • Developed an internal dashboard application for resource and HR management for the consulting company.
Technologies: SQL, SOAP, JavaScript, Subversion (SVN), Visual SourceSafe, Eclipse, Ant, JUnit, HttpUnit, Enterprise Java Beans (EJB), JavaMail, Apache Struts, JEE, Java

Heymarket SMS Integration with Salesforce (Public AppExchange App)

https://appexchange.salesforce.com/appxListingDetail?listingId=a0N3A00000FMaZuUAL
Heymarket is founded by ex-Salesforce employees, with a goal of creating a business texting platform. This lets businesses function at the ease of SMS for support and sales functions. The app is a natural extension of CRM capabilities of Salesforce to use SMS features of Heymarket.

I integrated SMS REST/JSON APIs for Heymarket with Salesforce using Apex callouts and custom metadata types. I also built a full-fledged AppExchange app which syncs contact/messages bi-directionally between Salesforce and Heymarket, and a Lightning component which lives on contact/lead/other object detail pages, where a Salesforce user can chat freely via SMS APIs of Heymarket. I supported WebSockets in Lightning components for push notifications and ultimately got the app listed on AppExchange, cleared security review, and worked with the client on all required due diligence and documentation.

Salesforce Chrome Extension

https://chrome.google.com/webstore/detail/salesforce-developer-tool/fiaakhiohminpblhmlihfcdhclmphjcd
This extension is built using Salesforce REST/tooling API and AngularJS with Bootstrap. It's used by nearly 4,000 active users worldwide and provides a handy way to get around debug logs and event log monitoring.

Local Time | Lightning Component

https://appexchange.salesforce.com/appxListingDetail?listingId=a0N30000000pw0PEAQ
This was among the first few Lightning components listed on the newly announced component marketplace on AppExchange, when most of the developers were struggling to migrate from Visualforce. This component gives a handy way to get hold of local time for leads and accounts objects.

Salesforce Lightning Communities

Multiple community projects in Salesforce, using both classic and Lightning. Delivered more than 200 Lightning components for Communities projects.

Lets Meet

https://devpost.com/software/lets-meet
This app makes it easy for sales and marketing reps to find places for real events. Its an “S1 First” application and is built as a Gmail-style single page app for Salesforce 1 mobile/tablet users only.

Key features:
• S1 look/feel – The custom UX resembles other native S1 screens.
• Fluid layouts – The same codebase scales up and down on mobile devices and tablets.
• Single-page app – Fast loading of various views and subviews.

Technology used:
Salesforce 1 mobile container/app, JavaScript, jQuery, Angular JS, Bootstrap, and a SF1-Bootstrap plugin.

Open Source Lib: Apex Fast XML DOM

https://code.google.com/p/apex-fast-xml-dom/
This provides a developer-friendly skin for the confusing Salesforce DOM classes XmlNode and XmlDocument. This skin is based on W3C DOM API specs. The project was a great success and got featured in the Salesforce Developer newsletter March 2010 edition.

Open Source Project: Salesforce-Lookup-Rollup-Summaries

https://github.com/abhinavguptas/Salesforce-Lookup-Rollup-Summaries
An Apex Engine to rollup lookup fields, a feature that is not yet supported by Salesforce. This project is very popular in the Salesforce community, and many developers have used it directly in their Salesforce customizations. The Financial Force CTO and Force.com MVP Andrew Fawcett used this library in his open source project here: https://github.com/afawcett/declarative-lookup-rollup-summaries. This app is also featured on the Salesforce website here: https://developer.salesforce.com/page/Declarative_Rollup_Summary_Tool_for_Force.com_Lookup_Relationships

More details on the library can be found here:
https://github.com/abhinavguptas/Salesforce-Lookup-Rollup-Summaries

WorkInbox

Developed a rich iPhone mail client with deep integration with Salesforce, Box.net, GoToMeeting, and Google Apps.

My role included:
• Active design and coding.
• Development of a complete Salesforce RESTful back end. using Apex REST services, which consume and send data in batches for better mobile performance.
• Development of a Core Data stack, including tables and Objective-C code using nested contexts to fetch and persist data.
• Implementation of multiple Salesforce integrations and tweaking the Salesforce Mobile SDK to support multiple accounts.
• Development of the complete Objective-C stack to parse a mail account for emails and correctly store them via Core Data.
• Exposing various APIs for use by the front-end team to flag, send, or delete messages.
• Integrating the app with other systems like GoToMeeting, Box.net, and more using OAuth, REST, and JSON.
• Creating Apex/Visualforce pages that support defining metadata for the iOS app to consume.

ArtemisVC

http://appexchange.salesforce.com/listingDetail?listingId=a0N30000003K72CEAS
Architected the app to simplify funding and other financial decisions for VCs. I designed a complete data model to track accounts, valuations, exits, and various other things involved in the investment to exit cycle. I also wrote triggers doing all calculations and rollups for various things like investments, valuations, and exits. I developed a Facebook timeline and style timeline page for accounts where VCs can quickly understand activities happening on an account from a time-based perspective. I also handled integration using REST with the CrunchBase JSON API, letting users create accounts without manually typing too much information. For example, users can create an Evernote account by just typing "Evernote" and the system will search for all other info via CrunchBase.

Key technologies used: Apex, Visualforce, Triggers, JavaScript Remoting, JavaScript, jQuery, HTML5, and CSS.

Kenandy ERP

https://appexchange.salesforce.com/listingDetail?listingId=a0N30000004gD2OEAU
Kenandy is the Cloud ERP platform for the modern enterprise. It empowers real people to work the way they want to on any device anywhere in the world. It’s easy to use, implement, and change. Kenandy automates all core business processes, including order-to-cash, procure-to-pay, planning and production, and global financials. I worked as a Salesforce developer to create key components of the OTC (Order to Cash) module. The challenging task was to develop client-heavy Visualforce pages enabling data entry operators to quickly perform tasks without many clicks.

Key technologies used: Apex, Visualforce, JavaScript, Remoting, jQuery, Kendo UI, Bootstrap, HTML5, and CSS.

Unycom

https://appexchange.salesforce.com/listingDetail?listingId=a0N300000059dzREAQ
This app manages IP/patent information in Salesforce. It integrates its OPS (Open Patent System) to pull required patent data. I developed and architected this app from scratch to deployment on AppExchange. I handled web service integration with the Open Patent System and wrote code to handle a huge volume of patent data.

Key technologies used: Apex, Visualforce, Triggers, JavaScript, Remoting, JavaScript, jQuery, HTML5, and CSS.

Location Glimpse (2011)

I developed a location sharing app that lets a user share their current location from mobile devices. The same location is updated and shown in various maps on Salesforce UI via Visualforce pages. This app won third prize in a Salesforce Chatter Challenge. The Salesforce blog entry is featured here: https://developer.salesforce.com/blogs/developer-relations/2010/06/chatter-developer-challenge-winners-congratulations.html. I built the developer chatter module to push updates to chatter and let users comment on location updates. I also implemented inbound email services to correctly parse requests coming from mobile apps with location data.

Appirio Cloud Factor (2010 - 2011)

CloudFactor connects Salesforce.com with Gmail and Google Calendar to provide users with the right information, in the right place, at the right time. By making it easier to access and manage relevant customer information, CloudFactor helps boost user productivity and improve customer intelligence. It allows users to:
- Access and update Salesforce without leaving Gmail
- Save emails back to Salesforce
- Create cases, contacts, events, leads, and tasks
- Collaborate with chatter
- Never install browser plugins due to centralized setup.

I created templates and JavaScript code to populate the templates on demand via a JSON response coming from various REST calls. I used jQuery for DOM manipulation. The final result is shown in a gadget below the email body or in calendars. I also developed reusable JavaScript components which could be used across multiple gadgets.

Technologies used: Apex, Visualforce, JavaScript, JSON, REST, and Google Gadgets.

Professional Service Automation (2009-10)

http://appexchange.salesforce.com/listingDetail?listingId=a0N30000001g22uEAA
Financial-Force Professional Services Automation (PSA) is a cloud-based services solution that leverages the power of Salesforce CRM and Force.com to the benefit of service companies. It enables users to manage people, customers, projects, and financials in one integrated services management application. Highlights include: sales alignment, services and finance on one cloud-based system, early visibility into new projects and on-demand resources, knock down of data silos, single views of customers, and actionable data insights. I architected and led a team of four developers and three QA to deliver some key modules of this app, like timecard entry. I developed a rich timecard entry screen using YUI, which is meant for bulk timecard entry. This was a really huge and complex page with nearly 4,000 lines of JavaScript code. I was involved in design discussions for key pieces of the app, like a permission control module, which goes a level ahead of the security permissions offered by Salesforce. I developed various reusable APIs and services in Apex and wrote triggers.

Key technologies used: Apex, Visualforce, Triggers, JavaScript, Remoting, and YUI.

Appirio CloudSync (2008-2010)

Appirio Cloud Sync lets users configure two-way synchronization between their Google Apps calendar and contact list, and their Salesforce calendar and contacts (appexchange.salesforce.com/listingDetail?listingId=a0N30000004cg4GEAQ). I worked on both the Java and Salesforce sides, fixing bugs and adding features on the JEE stack hosted over Amazon EC2. I also optimized SOAP calls from EC2 to Google and from EC2 to Salesforce. I used Apex and Visualforce for setting up various pages and viewing their logs.

Discount-Force

http://discount-force-developer-edition.ap1.force.com/
A website for B2C customers using Force.com sites. This site lets users configure products and services to be listed as discounted packages. This app was developed for the “Salesforce Developer Sites challenge” and got an honorable mention in the results. It was featured on the Salesforce blog (https://developer.salesforce.com/blogs/developer-relations/2009/09/developer-force-challenge-results.html).

I developed all HTML/CSS mockups for the various screens in the app without using any designers. I also implemented an object and data model in Salesforce to support the site fixture.

Open Source Project: Tolerado for Salesforce SOAP API

https://code.google.com/p/tolerado-salesforce-web-services-client-wrappers/
Tolerado is an open source Java-based client-side framework for better, fault-tolerant use of the web service APIs given by Salesforce. It focuses on improving the error handling on client web service calls, making the client side fixture more fault tolerable. It features:
• Correct exception handling for web service failures, with a provision for recovering failures that can be retried.
• Utility and wrapper APIs for making the development effort less error-prone with existing WS client stubs.

Tolerado is integrated deeply with Salesforce Enterprise, Partner, Apex, and Metadata WSDL web services. This project is used by many Salesforce customers and was featured in the Salesforce Developer Blog (https://developer.salesforce.com/blogs/developer-relations/2010/07/supercharge-your-java-apps-for-better-use-of-forcecom-web-service-apis-with-tolerado.html). It is also mentioned in the Salesforce Handbook, written by two Force.com MVPs (http://books.google.co.in/books?id=uqRJAgAAQBAJ&pg=PA258&lpg=PA258#v=onepage&q&f=false).

Tradebeam (2006-08)

This is a big supply chain portal used by governments and big enterprises to manage supply chain processes. My work involved Struts, Tiles, WebWork, JSP, Servlet, and FreeMarker-based UI components. I developed business components using technologies like EJB, Hibernate, XDoclet, EhCache, Velocity, Log4j, and Apache Commons. I created testing components using technologies like JUnit, HttpUnit, and Cactus. The solution was tested and deployed on BEA WebLogic 8.1x. Ant, Eclipse, CVS, and Oracle 9i were also used.

Nutch Plugins

I created Nutch plugins to change the Lucene index docs created by Nutch and enhance searching. This project was used by an ad company to check for websites using the distributed ad string.

Rank Fire

A page rank and SEO app for users to monitor and track the performance of their pages. I architected and developed the app from scratch to parse a page's rank on various search engines like Google, MSN, Ask, AOL, CUIL!, and more. I wrote the HTML parsing engine to parse various HTML formats and figure out the rank for a given URL. It features a page rank suggestion algorithm that suggests improvements on page markup to get better ranks from an SEO standpoint.

I implemented a notification system to generate alerts when rank falls down or shoots up. Amazon EC2 is used to parse HTML and other intensive tasks asynchronously. These EC2 workers run out of an SQS queue, which keeps track of pending items to parse. We spin up and down EC2 instances depending on the load of items to deliver. I created the complete, rich front-end of the app using Ajax, Dojo, and the Struts 2 framework. Spring and JPA/Hibernate is used for the DAO layer and server-side dependency injection operations.

Technologies used include: Java, JEE, Struts 2.0, Ajax, Dojo, jQuery, JSP, Servlet, FreeMarker, Spring 2.5, JPA, Hibernate 3, Log4j, Apache Commons, AWS, Amazon EC2, Amazon SQS, Amazon S3, JUnit, HttpUnit, Tomcat, Eclipse, SVN, and MySQL.

Savvion

https://www.aurea.com/legal/savvion-bpm-studio/
Savvion is a big BPM app with many modules. I worked on a key module called "BizLogic Engine," which was responsible for executing key business rules and flows created via a drag and drop UI from a different module. My responsibilities included developing an email command system that polls an IMAP/POP3 email account via Java Mail API. Upon getting new emails, email content is matched to user defined patterns so that required commands can be found and executed with mail contextual data on the server. I also fixed bugs in various complex flows in the BizLogic Engine module. Additionally, I wrote a template engine that uses Java regular expressions to parse standard response templates for various user actions.

Key technologies used: EJB, Java Mail API, Java Regular Expression API, Quartz Scheduler, Log4j, WebLogic, Ant, Eclipse, CVS, Oracle, MS SQL, MySQL, and PostgreSQL.

MG Reports

I created a rich chart-based dashboard application that shows exported data via various SOAP APIs on the web page.

Technologies used: Java, JEE, Struts, Tiles, JSP, JDBC, HttpUnit, JUnit, JBoss, Ant, Eclipse, Source Safe, MySQL, Java Mail, and EJB.

PSI Dashboard

I created a HR and resource management application using the JEE and MySQL stack for internal use by the consulting company.

Technologies used: Java, JEE, Struts, Tiles, JSP, JDBC, HttpUnit, JUnit, JBoss, Ant, Eclipse, Source Safe, MySQL, Java Mail, and EJB.

Open Source: Select Option Sorting

https://github.com/abhinavguptas/Apex-Select-Option-Sorting
The Apex SelectOption class is missing sorting support. I created this small and popular Apex library to provide this functionality with ease.

Open Source Library: Multi-RecordType-Sobject-Picklist-Describer

https://github.com/abhinavguptas/Multi-RecordType-Sobject-Picklist-Describer
This tiny project is for solving an interesting problem with describing picklist values in sObjects. Users can usually use describe calls to get the required picklist values, but when an sObject is configured for different record types and each record type has a different set of picklist values, the usual Apex describe system method doesn't help. We solve this problem by providing a describe() API for such cases.

Languages

HTML5, JavaScript, Apex, HTML, Java, SQL, Solidity

Frameworks

Visualforce, Lightning Components, Kendo UI, Bootstrap 3, Apache Struts, JUnit, Bootstrap, Chrome, AngularJS

Libraries/APIs

Salesforce API, Salesforce REST API, Salesforce Bulk API, jQuery UI, jQuery, JavaMail, Underscore.js, Salesforce SOAP API, Web3.js

Platforms

Salesforce, Salesforce 1, JEE, Eclipse, MacOS, Oracle, Amazon Web Services (AWS), Heroku, Google App Engine, Amazon EC2, Ethereum, Blockchain, Hyperledger, Visual Studio Code (VS Code)

Other

Salesforce Lightning, Salesforce Apex, HttpUnit, Ant, Triggers, OAuth, Aura, SOAP, Enterprise Java Beans (EJB), Ethereum Smart Contracts, Smart Contracts, Hardhat, Non-fungible Tokens (NFT), Cryptocurrency

Tools

Apache Ant, Git, GitHub, CVS, Sublime Text 3, Subversion (SVN), SourceTree, Eclipse IDE, MetaMask, Visual SourceSafe, Sublime Text, Grunt, Lightning Communities, Lightning Design System, Lightning Bolt, Salesforce DX

Paradigms

REST

Storage

JSON, MySQL

2004 - 2006

Master's Degree in Computer Science

Sikkim Manipal University - Jaipur, India

2002 - 2005

Bachelor's Degree in Computer Engineering

J.R.N Vidhyapeth - Jaipur, India

APRIL 2022 - PRESENT

Web3 Development via Alchemy

Nas Academy

APRIL 2022 - PRESENT

Professional Certificate Program in Blockchain

IIT Kanpur

APRIL 2022 - PRESENT

Professional Certificate Program in Blockchain

Simplilearn

FEBRUARY 2022 - PRESENT

Master NFTs in 7 Days

Nas Academy

MAY 2021 - PRESENT

Salesforce Certified JavaScript Developer I

Salesforce

MAY 2020 - PRESENT

Salesforce Certified Platform Developer II (SP20)

Salesforce

JANUARY 2017 - PRESENT

Salesforce Certified Development Lifecycle & Deployment Designer

Salesforce

JANUARY 2017 - PRESENT

Salesforce Certified Mobile Solutions Architecture Designer

Salesforce

NOVEMBER 2016 - PRESENT

Salesforce Certified Platform Developer I

Salesforce