From UP to the US: The journey of Abhinav Asthana and his affair with APIs
Abhinav Asthana is Co-founder and CEO of Postman, an API development platform used by millions of developers across the globe. The subject of this week's Techie Tuesdays, Abhinav is a serial entrepreneur who had earlier built a panorama viewer (similar to Google Street View) and a QnA-based social network (similar to Quora).
If you’re a developer, then the word Postman rings an altogether different bell in your mind. Dealing with Application Programming Interface (API) has become much simpler with Postman, a complete toolchain for API development. For Abhinav Asthana, Co-founder and CEO of Postman, APIs form the fundamental construct of productor service, and he’s keen to make APIs more accessible to everyone.
Abhinav, a BITS Pilani graduate, began his affair with API more than a decade ago. His current startup, Postman, has almost four million developers on its platform and is on a mission to simplify API development for them and others.
YourStory spoke to Abhinav to know more about his tryst with APIs and technology.
Related read - Meet Kiran Bhat—the man who engineered Hulk and Tarkin to win 2017 sci-tech Oscar
A programming prodigy
Abhinav began working with computers at an early age. His father, a civil engineer who lived in Basti (near Gorakhpur in Uttar Pradesh) then, was fascinated with computers. He bought one and taught himself how to programme on mainframe. What he didn't know then was his son would get hooked as well.
When the family moved to Lakhimpur Kheri, Abhinav learnt BASIC programming and later Visual Basic in Class 6th and 7th. Then internet happened and showed the vast amount of knowledge one could gain in the programming world.
Soon, Abhinav's interest turned towards building websites, and he taught himself HTML, CSS, Flash, PHP during Class 7th and 8th. He recalls, “By eighth grade, I was able to build an entire web application.”
Abhinav then found a group of kids his age who were interested in building things. At 13, Abhinav, along with this group, started designing websites and taking up web application projects. He says, “We were two of us in Lakhimpur, one guy each in the UK, the US and New Zealand.”
They made some money and Abhinav got an $80 cheque while still in Class 9. By now, he was completely hooked to the computer and programming. He recalls,
Every time I completed a projector application, it was very gratifying. At that point of time, I just wanted to do computer programming. It's the best thing in the world, you don't have to seek approvals from anyone. You just have to think of the goal and build it.
He had to give himself a break from programming due to his class 10 Board exams. He resumed programming in class 11. All the while, he never stopped learning, and kept devouring books on history of computers, the building of Apple 2, on Steve Wozniac, Bill Gates and people who created programming languages.
In Class 12, he cleared BITSAT (BITS Admission Test) in his first attempt but decided to take a year off for preparation, as was the practice then. His family moved to Lucknow and for a year, he paused all his projects.
Also read - Meet Mitesh Agarwal—the ‘brain’ of BITS who’s heading technology at Oracle India
Entrepreneur at BITS Pilani
Just before his admission, Abhinav came across a forum called BITSZone, which was run by Shubham Malhotra and a few others at BITS Pilani's Goa campus. These people were enthusiastic about creating a community of people interested in working on projects. The forum was based on PHP bulletin board, which Abhinav was familiar with. On reaching the campus, he signed up for the forum. Later, he joined the Centre for Software Development in the college well.
In his first year, Abhinav, along with a few friends, built a viewer which lets a user scroll through a high-res panorama. He says, “By this time, Google Street View had not come out so we thought we were quite progressive.”
Since it was a 360-degree panorama, the team named it BITS360. Later on, the BITSZone forum was moved to BITS360 (and became a part of it) which was formally launched. He says, “We created an entire virtual tour of the campus. That became a massive hit. I hosted the forum by using my father's credit card to buy the server space and domain!”
The team started building a product around BITS360. They explored the various ways it which it could be used. For example, as a virtual tour software or a real estate promotional software. They even created a CD for the Goa Tourism ministry.
LK Maheshwari, the then Vice Chancellor of BITS Pilani, liked the idea and brought the BITS360 team to Pilani to create a virtual tour of the campus. Abhinav and his friends were the go-to people when it came to building college festival websites or designing magazines for the BITS Pilani Goa Campus. But they weren’t satisfied with all this.
Build more websites, make more money
In his second year of college, Abhinav and three of his friends formed GrayScale to make money from building websites and applications. They were flooded with projects, and people sought Abhinav's expertise for individual projects as well. Around this time, he was introduced to Vineet Devaiah, who was studying at Cornell University, and together they started building multiple things. One of the things they built was ExamCrunch, which was like Quora for students planning to do an MS or a PhD in the US. The system was similar to StackOverFlow.
After having done all the work for BITS360, ExamCrunch and LetMeKnow.in, Abhinav realised that the tools which were used to make API calls and send data took a lot of time and expertise to use them well.
At this juncture Abhinav got an internship at Yahoo!, which was then trying to build an ingestion system for Yahoo! properties where the data would come to their systems and then could be queried and linked. Abhinav adds,
Yahoo! was mostly building a platform internally that would be accessible using an API. My immediate mentor was working on an API and we were working for the client side system for implementing that API. It was done on PHP, JavaScript and HTML. We also used Yahoo! specific technologies which we got as modules. Our goal was to build an end-to-end system.
The Yahoo! stint helped Abhinav truly understand the importance of APIs, and it continued to simmer at the back of his mind until he started working on Postman several years later.
Skipped placements and job offers to start up
Abhinav got a job offer from Yahoo! at a time when ExamCrunch wasn't having much traction. However, he declined the offer and decided to let ExamCrunch brew for some more time. Meanwhile, he tried selling BITS360. Abhinav and Vineet built a virtual tour for National University of Singapore and some other clients. These projects brought in some money.
Abhinav decided to skip the campus placement process and started up with Vineet and another friend. The trio tried finding investors by building a lot of products but realised it made more sense to build on BITS360 and fine-tune it. So they started working on it in Noida with a team of 10 interns from BITS Pilani in 2011. Abhinav recalls,
We had built a viewer for panoramas in 2006. But creation of panoramas was itself a problem. We thought we could build a better stitching system combined with a better viewing and sharing system. We wanted to build a community of panorama takers who would go out and capture the world around them and build a crowd-sourced street view (owned by Google). We fundamentally believed that the approach of driving car—what Street View did—around isn't good enough.
The team built a set of systems and algorithms that would allow people to effectively map the world around them. With this idea they raised $400,000 in seed funding and called their company Teliportme. Smartphones were becoming popular then, so they teamported the entire thing onto the smartphone.
After speaking to the Google Android team, Teliportme Panorama app got featured on the worldwide PlayStore, effectively fetching them millions of downloads. At that time, it was the only app built from India that was featured worldwide.
Also read - The untold story of Alan Cooper, the father of Visual Basic
The tech side of Teliportme
Panorama was initially created using GPU computing, a web-based stitcher. There was a backend system for hosting those panoramas and RackSpace was used for storage. Abhinav explains,
If you uploaded a panorama, we would split it in different resolutions, i.e., multiple component tiles. We built this system that would take the data from a stitcher, which puts it together, and then tile it in different resolution so that when you open it on a particular screen, it's optimised for that screen. These tiles were stored in S3 kind of storage system in URL structure that would make it easy to retrieve.
The renderer was a 3D viewer that would take these tiles and project it on geometry, like a cylinder or a sphere. The viewer was built using Flash and ActionScript, and PHP was used in the backend. The company was still using scripting to upload the files and the RabbitMQ queuing system.
In Android stack, the team wrote a C-based stitcher, using Android's native support—Java with C libraries linked to Java code—that would work on smartphones. The interface was in Java. The viewer was changed from ActionScript to OpenGL-based viewer, in native C code.
After three and a half years, Vineet and Abhinav’s thoughts diverged on how to take the company forward. The duo couldn't come to a consensus and Abhinav decided to move on to try new things.
The break
After exiting Teliportme, Abhinav got on a bus and went to Mumbai to meet Ankit Sobti, his ex-colleague from Yahoo!, in search of something to do. He says, “During the break, I had to sustain myself as it was my exit from the startup and not the startup's exit.”
He started consulting on design and development for a set of projects.
He saw that any system would have an API that would connect to the backend systems, and managing that API (testing and debugging) was becoming a challenging task. That’s when he wrote an early version of Postman as an open-source tool and put it up on the Chrome WebStore. Postman essentially helped developers construct an API request and send it to the server, and all of this could be done through JavaScript. On the backend, Abhinav used PHP. He explains,
We had a feature of link sharing. Just like you get a Dropbox link to share a file, you would get a link of a collection of APIs to share a collection on Postman.
The tool got a few thousand users organically who gave feedback as well. This helped Abhinav get $200 a month from a few companies who were ready to sponsor Postman as a project if their logo was visible on the website.
By now, Abhinav had companies—both from India and Silicon Valley—offering him the job of CTO. However, he was committed to start up.
Postman was taking off and the solutions Abhinav arrived at when he set out to solve his own problems resonated with the developers community as well. Around that time, he got an invite from the Chrome team in the Bay area working on the new Chrome app platform (Postman existed as Chrome app). He says, “They said that almost 25 percent of their development time is on Postman, and wanted to feature it as one of the top apps on the new Chrome app platform.”
The Chrome team needed a new version of Postman because they were trying to position it as competitor to native apps. Abhinav decided to rewrite Postman and build it further.
Related read - How a marketing and sales person ended up as a digital czar—Ashish Gupta’s story
Conceptualising Postman
Since the open source and donation/sponsorship model wasn't working out for Postman, Abhinav built the new version of the Chrome app with an in-app fee of $10 which would give the user advanced testing features in Postman.
At this time, Postman existed in two forms: open-source Postman Chrome extension, and Postman Chrome app, which is close-source with open-core, available as an in-app purchase.
Abhinav then convinced Ankit to leave Directi and join him at Postman. The duo, with Abhijit Kane (third co-founder), started building the next version of Postman.
Historically, people have created their own REST client to solve their problems, so the concept of Postman as a REST client isn’t new. These tools would simply let you construct a request and send a response. Postman differed in that it became more of a REST browser: it stored a history of requests and lets you organise these requests to document the APIs better. Abhinav adds, “When you debug and document and share, it creates a viral loop for the product to grow.”
Funding and building
By mid 2014, Postman had about half-a-million users and had put up the new website. Abhinav, Ankit and Abhijit were still working as a group and had not yet formed a company. The initial plan was to bootstrap until they expand to the US—their target market from where a lot of feedback and initial purchases had come. But they started getting a lot of VC interest. Abhinav says, “We wanted to work with a firm that had experience working with companies that are building a product for the global market. Hence, the Nexus VP decision came through.”
Postman was formally set up in October 2014, with a seed funding of a million dollars.
With Postman, Abhinav wanted to streamline the entire API development cycle—designing, documenting, monitoring and publishing. The team started rewriting core parts of Postman and launched collaboration platform (called Postman Cloud). Abhinav says,
Initially, Postman started as testing out a single API call, and we graduated to the idea of documenting your API, and now we're talking about the entire set of APIs that your organisation has. Today, Postman is an API development environment.
Over the past few months, Postman has launched mock servers, monitors, documentation,all integrated very closely.
Postman tech and open source
Postman uses JavaScript on the client side and NodeJS on the server side. The company has built a real-time collaborative system using web sockets as communication protocol (using SalesJS as a framework). Initially, Postman was hosted on Linode with MySQL but has now moved on to AWS.
The stack now is much more complicated. Postman is using AWS services like Beanstalk, VPC s and RDS. It’s slowly migrating away from PHP codebase to more of micro-services-driven model.
The team created a project called Postman runtime to share its work in open source. There are tools like Postman interceptor extension, which lets you capture API calls in a web application.
Postman boasts of a four-million user base and has two million monthly active users. Its founders believe that APIs are the fundamental building blocks of technology, going forward.
Future of APIs (and Postman)
Today, the applications are delivered on multiple front ends, and with Alexa, chatbots and others, mini applications are delivered as a part of other larger applications. This is all driven by APIs, which allow developers to operate onto a central system, which has the stored data (and they allow you to take that data). Abhinav says,
When you scale this up to future you would want things to take better autonomous decisions and operate independent of human intervention, as much as possible. You'll do it for data collection and to take the results out of it to deliver to applications.
He believes that APIs will be the fundamental construct in the first point while building any service or product. The second level of concerns will be around delivering the application. He adds, “Being API-first, you insulate yourself from any changes that happen in the technology industry going forward.”
He also believes that all existing data stores and legacy applications will come in this ecosystem of APIs. This will lead to a new breed of software, where one can create end-to-end applications just by APIs,without worrying about the front and back end.
Postman wants to enable all kinds of APIs (and their use cases) and protocols. Abhinav says,
Postman will become a much more expansive pluggable system. In a way, we abstract out the idea of lifecycle with what the protocol implementation of that API is.
The company is going to go deeper into the things that can be done with an API—testing, documentation, monitoring and integration. Monitoring as a product will have multi-region monitoring and on-premises monitoring,which you can connect to a cloud-based system. It’s also looking at building advanced tools for reporting. Postman intends to eventually reach a stage where it can tell what companies and developers can do with their APIs.
You may also like - Meet Ajay Shrivastava – the tech general behind culture and technology at Oyo and Knowlarity
Developers today
According to Abhinav, there are two kinds of developers today: the curious lot, which knows its fundamentals well and works on what it knows; and the kind that are confused and try out all the latest technologies to beef up their resumes, but can’t figure out which one to go after. Abhinav says, “Companies are also part of the problem because they filter resumes based on keywords and buzzwords.”
Even Abhinav has fallen into the trap of new technology and since then he (and his team) is more cautious about certain technology choices.
Of past and future
Thinking about past, Abhinav regrets those instances when he had let go off his intuition and learning, to choose experts’ advice. He now knows better and goes by his own intuition and learning. His long-term product decisions are driven by the goal.
to build a good, quality product from India. That was the motivation for him to start Teliportme initially. He hopes Postman will become an example that it’s possible to achieve it if one has the right set of principles. He says,
I’ll be happy to get more people excited about development, being curious, building good product and technologies, and long-term successful companies. If we can have that impact on a fundamental cultural level in India, it'll be a good thing to look back on.
You can find him on Github and Twitter.