Summary
Overview
Work History
Education
Publications
Timeline
Generic

Neeraj Sharma

Senior Computer Scientist

Summary

Currently working as Senior computer scientist with 10+ years of experience in C/C++. Good understanding of D.S. Algorithms and enjoy working in a team environment.

Overview

11
11
years of professional experience
6
6
years of post-secondary education

Work History

Senior Computer Scientist

Adobe systems (Cloud Media Team) [C/C++]
01.2021 - Current
  • Have been working as a lead engineer and been involved in all architecture and design level discussions.
  • Designed and implemented a new proposal to connect Premiere pro directly to ACP for upload and download.
  • Spent some time to work on cloud media service side to fix few bugs and workflows based on client needs.
  • Have been working on a design to combine all of the workflows supported by cloud media under a single pipeline.

Computer Scientist II

Adobe systems (Cloud Media Team) [C/C++]
07.2019 - 01.2021
  • Cloud media team is responsible to manage media imported in Adobe Premiere pro Team projects on cloud. Imported media is automatically uploaded/downloaded to ACP using Cloud media service.
  • I have been involved in designing and implementing a new module in Premiere pro to connect it to Cloud media service to mange the media.

Computer Scientist II

Adobe Systems (Indesign Team) [C/C++]
01.2018 - 07.2019
  • Worked in Stakeholder collaboration team : Add enough tags and info to exported PDF out of indesign such that when commented PDF is imported back, all the comments can be mapped back to indesign document elements even if it has been modified.
  • PoC on replaying the whole user workflow using detailed command based logging and demoed it to reproduce few crashes.
  • Adding automated methods to recover damaged files (file which cannot be opened otherwise).

Computer Scientist

Adobe Systems (Indesign Team) [C/C++]
07.2016 - 01.2018
  • Worker on PDF.Next feature (was cancelled later in early stages of development ): This involved creation of PDF.Next (PDF including html/css to support dynamic layout and interactivity) from InDesign.
  • Stability feature: This included handling corruption of files (recovery and avoiding corruption), reducing crash rate, reproducing top crashes, handling cache for files on network, fixing bugs etc.
  • Worked on UI spectrum.

Senior Software Engineer

Interra Systems (DMG Baton Video Quality Team) [C/C++]
01.2014 - 07.2016
  • Baton is Automated File based QC solution used by global telecoms and broadcasters working with Digital Media Content
  • Designed and Optimized various video quality checks used by Baton
  • This involved working on image level algorithms using OpenCV.

Senior Member of Technical Staff

Mentor Graphics (Precision FPGA Synthesis Team) [C/C++]
07.2012 - 01.2014
  • Worked in Physical Aware Synthesis feature.
  • Physical Aware Synthesis : Uses various techniques to simulate physical synthesis to recognize critical paths in circuits and optimize them using various logical synthesis techniques..

Member of Technical Staff

Mentor Graphics (Precision FPGA Synthesis Team) [C/C++]
07.2011 - 07.2012
  • Worked in Hi-Reliability feature.
  • Hi-Reliability : Achieved by adding redundant elements to digital circuits to increase its fault tolerance.

Education

M.Tech - C.S.E

IIT Delhi
07.2009 - 07.2011

B.Tech - C.S.E.

C.C.E.T. (Panjab University)
07.2005 - 07.2009

Publications

  • Brief announcement: efficient cache oblivious algorithms for randomized divide and-conquer on the multi core model.
  • Publication date. Jun 25, 2012
  • SPAA '12: Proceedings of the twenty-fourth annual ACM symposium on Parallelism in algorithms and architectures
  • Description : In this paper we present a cache-oblivious framework for randomized divide and conquer algorithms on the multi core model with private cache. We first derive an O(n/p log n + log n log log n) expected parallel depth algorithm for sorting n numbers with expected O(n/B logM n) cache misses where p,M and B respectively denote the number of processors, the size of an individual cache memory and the block size respectively. Although similar results have been obtained recently for sorting, we feel that our approach is simpler and general and we apply it to obtain an algorithm for 3D convex hulls with similar bounds.
  • We also present a simple randomized processor allocation technique without the explicit knowledge of the number of processors that is likely to find additional applications in resource oblivious environments.

Timeline

Senior Computer Scientist

Adobe systems (Cloud Media Team) [C/C++]
01.2021 - Current

Computer Scientist II

Adobe systems (Cloud Media Team) [C/C++]
07.2019 - 01.2021

Computer Scientist II

Adobe Systems (Indesign Team) [C/C++]
01.2018 - 07.2019

Computer Scientist

Adobe Systems (Indesign Team) [C/C++]
07.2016 - 01.2018

Senior Software Engineer

Interra Systems (DMG Baton Video Quality Team) [C/C++]
01.2014 - 07.2016

Senior Member of Technical Staff

Mentor Graphics (Precision FPGA Synthesis Team) [C/C++]
07.2012 - 01.2014

Member of Technical Staff

Mentor Graphics (Precision FPGA Synthesis Team) [C/C++]
07.2011 - 07.2012

M.Tech - C.S.E

IIT Delhi
07.2009 - 07.2011

B.Tech - C.S.E.

C.C.E.T. (Panjab University)
07.2005 - 07.2009
Neeraj SharmaSenior Computer Scientist