My work career started in 1991 when I graduated in Civil Engineering from Indian Institute of Technology, Kharagpur, India. I had completed a project in Fluid Mechanics at school that required a good amount of programming exposure. I decided that I liked programming better than Fluid Mechanics.
So I joined the ranks of the IT proletariat by starting as a programmer with an IT company. My earliest exposure was to a whole sale banking product. I had a technical bent of mind and dedicated more time to the language and the programming aspect. This lead me to innovate the product technically. Before I left this job I had learnt about Source Code Control, Unix Scripting, recording macros and replaying them (which lead to a big innovation in automating end of day processing), UI design with X windows and Motif and about UNIX pseudo terminals. By the time I left this company in 1995, I had developed multiple skills and understood the process of software development. I have also learnt to interact with customers and cross language barriers – my biggest challenge was to learn enough of Thai to enable communicating with our client in Bangkok.
The next few stints were in the USA with companies such as AT&T and Lucent Technologies – companies that are extremely good in having crafted out automated processes for accomplishing tasks such as release management, automated builds etc. These stints enabled me to polish up my programming skills and understand the build process better. I had written several shell and awk scripts, vi macros and make files to accomplish fairly complex tasks. This was also the time for me to understand and assimilate Object Oriented Programming. I had developed a very early version of an ORM system in C++. This system required considerable skill in Informix E-SQL, C, C++ and the ability to write shell scripts that could automatically generate code.
In around 1998, I switched to Data Warehousing and ETL work at Merrill Lynch. The ETL that was written was hand rolled using UNIX shell scripts. An entire warehouse was managed by a handful of people (less than 6 members). I had developed proficiency in writing complex SQL queries, shell scripting, ETL and picked up a little bit about data warehousing. Once the ware house was in place I started building various tools around it. This required knowledge of Java, Messaging Queues, XML/XSLT and related web technologies. I wrote campaign management systems and reporting tools.
From 2003 onwards, I transitioned to Middleware with a strong emphasis on architecture and people management. I began designing and developing frameworks. A messaging framework that I designed,coded key parts of and developed along with a team of developers serves as the framework of choice for the middleware in JP Morgan Chase.
2003 also marked the year when I made a foray into entrepreneurship with the conception and development of a product that automated the entire functioning of a hospital. This required interacting with a team of doctors and their assistants to develop a software that could be used across multiple hospitals.
In 2006, I moved back to India and headed an architecture group with a product outsourcing company. This provided me a unique opportunity for setting up a horizontal group that spans across multiple business units. I developed on the initial ideas I had when I designed the messaging framework and made an application framework. During this stage I made forays into every aspect of software development. I was involved in process methodology discussions, knowledge management, framework development, business development and training.
But I was hankering for exposure to “pure play” product development on a large scale. So I joined Microsoft in a program management role. I did program management there with a big team of developers, program managers, architects, system testers and product managers. I headed virtual teams to add complex features to an advertising product. I have also been honing my skills in project management, feature prioritization, product evangelism, market research etc. One big part of this job is to play with various product KPIs (Key Performance Indicators) to arrive at the correct setting for some configurable product parameters. This was an interesting exercise since it expanded on my knowledge about how users interact with a product.
But the absence of technology as an integral part of my job description, created a big lacuna in my mind. So I came back to my roots to provide technical leadership to a massive web rebranding initiative. This was very complex and required the interplay between a lot of people. Managing the process and the technology is challenging to say the least. After this I had been involved in several web branding, re-branding and Agile evangelistic exercises with companies of immense sizes (like Marks and Spencers, Sprint, SAKS, Lane Crawford, JC Penney, Sainsbury’s, Tesco etc.) All these exposed me to some of the biggest challenges that companies face in technological evangelism. All these things were awesome engagements and overall helped me to become a better technological evangelist.
But the thirst for hard core product development with the ability to mould the product in the way I want made me think of doing a start up. I have since joined E-Bee since it has the energy of a startup and the maturity of a company which has been there for sometime. We are using incredible latest technology to craft an amazing product. This includes both front end and back end development using cutting edge technologies such as React.JS, Node.JS, Redux, Camel and ActiveMQ. I am frankly having a blast here and thinking of this as a re-birth of my technological prowess. Incredibly excited about the journey ahead and the possible technological gullies that I might be exploring. Thanks for reading if you have come this far. 🙂