Work Experience

  • Cohesity Inc, Santa Clara – CA, Member of Technical Staff (April 2014 – Jul 2018)
    • Worked on various infrastructure components at Cohesity Inc. which is a technology company that develops software to backup, manage and gain insights from their data, across multiple systems or cloud providers.
  • Google Inc, Mountain View – CA, Staff Software Engineer (2012 – April 2014), Software Engineer (2009 – 2012)
    • Crawl Scheduling– Markose was an integral part of the team that worked on the crawl scheduler at Google. The crawl scheduler is the system in Google’s search infrastructure that selects documents for crawling so that they can be indexed and then served from various Google search properties (web, image, video, mobile etc). Its goal is to discover new good pages fast and refresh the right set of pages to keep the overall quality and freshness of the search index high
  • Google Inc, Bangalore – India, Software Engineer (2006 – 2008)
    • Orkut Spam and Abuse Prevention – Markose was part of the core team that was tasked to bring down spam and abuse in Orkut (Google’s social networking product). His team deployed a number of successful measures to bring down spam from a level of around 50% to almost negligible levels. (examples include intelligent user behavior based rate limiting, automatic deletion of users, automatic spam classification of all posted con- tent, incorporating user feedback about spam and abuse etc).
    • AdsSearch– Markose worked in a 3 member team to design and build a large scale system that provided a real-time search index over all of Google’s text ads and keywords. This was a reasonably complex effort because it had a lot of moving components, it required him to extract huge volumes of ads data from our internal servers in a reliable, consistent and incremental manner, and then index and serve this data to customers with minimal latency.
    • Graph Search – Markose worked on an experimental project where the aim was to allow users in a social network to search for other users, and get results that are ranked based on the text match and the proximity of the target user in the graph. The big challenge here was that he needed to provide a proximity search which could at-least retrieve results that were 3 hops away in graphs whose sizes were in the order of hundreds of millions of nodes.

Research Projects

  • Group based routing for disconnected mobile ad hoc networks (under Prof. A. Gupta and Prof. S. Keshav, 2005–06) – Markose worked on designing a routing protocol for disconnected ad hoc networks which could exploit certain group patterns formed by movement of nodes. The protocol works by identifying groups using an efficient distributed group membership protocol, and then routing at the group level, rather than at the node level.
  • Routing protocols for energy constrained ad hoc networks (under Prof. A. Gupta, 2004–05) – Markose studied and compared various routing protocols for energy aware routing in mobile ad hoc networks. He used extensive simulations across a wide variety of input metrics (such as mobility, density, network size etc) to compare their energy consumption and packet delivery ratios. He also proposed a better energy aware routing protocol based on this study.
  • Study of Grapheme and Phoneme characteristics of languages (Feb–May, 2006) – Markose studied the morphological structure and characteristics of certain languages by building a network based on the edit distances between the most frequently occurring words in the language. He observed many interesting properties by applying concepts of complex network theory to this network.
  • Testbed setup for a tether-less computing architecture (under Prof. S. Keshav, May–Jul, 2004) – Markose set up a research testbed for prototyping and testing a tether-less computing architecture developed at the University of Waterloo. This work included working with many new hardware devices and technologies (e.g., Berkeley Motes, Soekris 4801’s, DTN, I3 etc.)


  • Indian Institute of Technology, Kharagpur – Integrated Dual Degree (BTech and MTech) in Computer Science and Engineering, 2006 (CGPA 8.91/10).
  • Seth Anandram Jaipuria School, Kanpur – Class 12, ISC, 2001 (Overall Percentage – 93.75%).
  • D. Virendra Swarup Education Centre, Kanpur – Class 10, ICSE, 1999 (Overall Percentage – 89%).


  • M. Thomas, S. Phand, A. Gupta, “Using Group Structures for Efficient Routing in Delay Tolerant Networks“, Journal of Ad Hoc Networks – Vol. 7, Issue 2, Mar 2009, pp. 344-362.
  • M. Thomas, A. Gupta and S. Keshav, “Group Based Routing in Disconnected Ad Hoc Networks“, Proc. 13th Annual IEEE International Conference on High Performance Computing, December 2006.
  • M. Choudhury, M. Thomas, A. Mukherjee, N. Ganguly, A. Basu, “How difficult is it to develop a perfect spell-checker? A cross-linguistic analysis through a complex network approach“, Textgraphs 2 Workshop at HLT/NAACL, April 2007.
  • A. Chattopadhyay, M. Thomas and A. Gupta, “An Energy Aware Routing Protocol for Mobile Ad-Hoc Networks“, Proc. 15th International Conference on Advanced Computing and Communications, 2007.

Awards and Achievements

  • Placed 3rd overall (1st position in Kolkata site) in the ACM ICPC regional programming contest held in Kolkata, organized by IIT Kanpur in 2003. The contest drew more than 60 participating teams from South East Asia.
  • Placed 25th in the Google India Code Jam 2005, which attracted participants from India, Indonesia, Malaysia, Singapore, Thailand and Nepal.
  • Placed 2nd in Overnite 2006 and 3rd in Overnite 2005 – an algorithm intensive programming contest organized in and by IIT Kharagpur, in which more than 60 teams from various colleges throughout the country participated.
  • Recipient of National Talent Search Scholarship (NTS) awarded by NCERT to about 750 students countrywide.