About me

My name is Kartik Bajaj. I am currently a Master's student in the department of Electrical and Computer Engineering at the University of British Columbia, under the supervision of Karthik Pattabiraman and Ali Mesbah. I completed my undergraduate studies and received my Bachelor of Engineering degree from VIT University.

My main areas of research include Web Applications, Software Testing, and Program Analysis. I am always interested in building tools that can assist the web developers during and after building the web application.

Awards and Scholarships
  • ACM SIGSOFT-CAPS Travel Award for International Conference on Automated Software Engineering (ASE), 2014.
  • 2 year MITACS Globalink Graduate Fellowship for MASc at UBC, 2013.
  • MITACS Globalink International Research Internship, 2011.


K. Bajaj, K. Pattabiraman and A. Mesbah, “Dompletion: DOM-Aware JavaScript Code Completion”, in Proceedings of the IEEE/ACM International Conference on Automated Software Engineering (ASE), 2014, 11 pages, ACM.
(PDF) (Details)
K. Bajaj, K. Pattabiraman and A. Mesbah, “Mining Questions Asked by Web Developers”, in Proceedings of the Working Conference on Mining Software Repositories (MSR), 2014, 112–121, ACM.
(PDF) (Details)
F. Ocariza, K. Bajaj, K. Pattabiraman and A. Mesbah, “An Empirical Study of Client-Side JavaScript Bugs”, in Proceedings of the ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), 2013, 55–64, IEEE Computer Society.
(PDF) (Details)



Dompletion assists developers by providing DOM-Aware JavaScript code completion, when the developer is writing JavaScript code to obtain references to DOM elements. Dompletion also analysis JavaScript code to reason about the existing as well as unseen DOM states.


Work Experience

Software Developer, PayPal
Chennai, India— July 2012 – Dec 2012
  • Developed a framework for generating code coverage for unit test cases using Bull’s eye tool.
  • Presented an idea in PayPal Hackathon in Oct 2012 and was selected among top 20 ideas.
Intern, PayPal
Chennai, India — Dec 2011 – May 2012
  • Developed a service manager tool for PayPal (PayPal Service Manager).
  • Many Dev/QA teams in entire PayPal are successively using the tool.
Research Intern, UBC
Vancouver, Canada — May 2011 – July 2011
  • Played a keyrole in the development of www.nextgenu.org
  • Developed themes and plugins for Moodle.
  • Developed plugins based on Google translator APIs.
  • Had some exposure with Vivisimo (Search engine)

Teaching Experience

Position: Teaching Assistant
Course: EECE 210 Software Design
Instructor: Karthik Pattabiraman
Duration: Sept'13 - Dec'13
Position: Teaching Assistant
Course: EECE 315 Operating and File Systems
Instructor: Karthik Pattabiraman
Duration: Jan'14 - Apr'14


Things I <3 to work with and my confidence level