Satish Chandra Gupta

Personal Homepage
Microsoft Research, India (

I am a Senior Software Engineer in Advanced Development Group at Microsoft Research India., where I help transforming cool exciting technologies invented at Microsoft Research into Microsoft products and services. I currently work on energy profiler for mobile applications (released as battery profiler in Windows Phone SDK 8.0 in Oct 2012), and indoor localization.

Prior to joining Microsoft Research, I worked at IBM Rational Software as programmer and tech lead developing various programming tools: modern Modeling IDE capabilities for Executable Models with UML Action Language in Rational Software Architect and execution and debugging capabilities for its Real Time edition, PurifyPlus for AIX, and a Java memory leak detection tool called Leakbot.

My computer science interests include program analysis & profiling tools, compilers, software development environments, software engineering tools, programming languages and type theory.

In a nutshell, I love building programming tools, I still program, and I unabashedly confess that I am just a programmer.

I grew up in the industrial town of Kanpur (India) at the bank of river Ganga.  I received my B.Tech. in Chemical Engineering (with minor in Computing) from Indian Institute of Technology, Kanpur in 1996, and a Masters in Computer Science from University of Wisconsin - Milwaukee in 2001.

Publication Statistics

Publication period start
Publication period end
Number of co-authors

Number of publications with favourite co-authors

Productive Colleagues
Most productive colleagues in number of publications


Elamkulam, Janees, Glazberg, Ziv, Rabinovitz, Ishai, Kowlali, Gururaja, Gupta, Satish Chandra, Kohli, Sandeep, Dattathrani, Sai, Macia, Claudio Paniagua (2006): Detecting Design Flaws in UML State Charts for Embedded Software. In: Proceedings of the Second International Haifa Verification Conference HVC 2006, Lecture Notes in Computer Science vol. 4383 October 23-26, 2006, Haifa, Israel. pp. 109-121.

Gupta, Satish Chandra, Nguyen, Tien Nhut, Munson, Ethan V. (2003): The Software Concordance: Using a Uniform Document Model to Integrate Program Analysis and. In: Proceedings of the Tenth Asia-Pacific Software Engineering Conference APSEC 2003 December 10-12, 2003, Chiang Mai, Thailand. pp. 164-173.

Nguyen, Tien Nhut, Gupta, Satish Chandra, Munson, Ethan V. (2002): Three Issues in the Use of Versioned Hypermedia for Software Development Systems. In: 8th Brazilian Symposium on Multimedia and Hypermedia Systems SBMIDIA 2002 October, 2002, Fortaleza, CE, Brazil. pp. 3–18.

Nguyen, Tien, Gupta, Satish Chandra, Munson, Ethan V. (2002): Versioned Hypermedia can improve software document management. In: Hypertext'02 - Proceedings of the Thirteenth ACM Conference on Hypertext and Hypermedia June 11-15, 2002, College Park, Maryland, USA. pp. 192-193.

Gupta, Satish Chandra, Nguyen, Tien Nhut (2002): The Software Concordance: A User Interface for Advanced Software Documents. In: Proceedings of the 6th IASTED International Conference on Software Engineering and Applications SEA 2002 November, 2002, Cambridge, Massachusetts, USA. pp. 181–186.

Gupta, Satish Chandra (2005). Java memory leaks -- Catch me if you can. Retrieved 0000-00-00 00:00:00 from

Gupta, Satish Chandra (2005). Need for speed -- Eliminating performance bottlenecks. Retrieved 0000-00-00 00:00:00 from

Gupta, Satish Chandra (2006). What lies beneath -- Discovering untested code. Retrieved 0000-00-00 00:00:00 from

Gupta, Satish Chandra, Gaurav, Anand (2008). Debugging with Purify. Retrieved 0000-00-00 00:00:00 from

Gupta, Satish Chandra, Gaurav, Anand (2008). Customizing Purify instrumentation and reporting. Retrieved 0000-00-00 00:00:00 from

Gupta, Satish Chandra, Sreenivasamurthy, Giridhar (2006). Navigating \"C\" in a \"leaky\" boat? Try Purify.. Retrieved 0000-00-00 00:00:00 from

Gupta, Satish Chandra, Gaurav, Anand (2008). Integrating Purify into software development and testing process. Retrieved 0000-00-00 00:00:00 from