Software Architect
CurrentI was put in touch with this company through a mutual friend. I was offered a position as Golang Senior Software Engineer (SSE) initially. The language sparked my interest. The more I came to know about the language, the more it excited me. I was looking for a career change so I saw this as a rare opportunity.I brought myself up to the point of being able to write production ready code in Go within the tough deadline of two weeks. I spend next few months developing numerous core packages and helped with prototyping. Witnessing my capabilities, I was asked to evaluate in-house Go Web Application Framework. The framework was in its version 1, and had design flaws that hindered development. I was able to identify the pros and cons of this framework. By this point I already had extensive understanding about the framework comparable to its authors. Eventually I designed and developed version 2 of the in-house Go web application framework entirely from ground up, addressing the short coming of the existing framework as part of a two man team. The framework serves as backbone for all our web applications and reaches over 2 million users per month (2 years and running).My next project was to architect and implement a Content Delivery Network (CDN) used in-house for all content streaming needs. We have about 50 servers, delivering over 4 Peta Bytes of data per month, fully managed by the CDN (1.5 years and running).Apart from these I have implemented code generation tool for Go to enable fast prototyping and generation of API's for data layer access. The tool is in use for all projects since. Developed Ad-Engine and custom HTML5 video player that supports VAST/VPAID advertisements with the help of HLS streaming tech and Google IMA.The framework and code-gen were perplexing design problems, while the CDN, Ad-Engine and Video Player were constant technical challenge. The company's tendency to constantly push me towards unfamiliar zone has been a boon.