Professional Documents
Culture Documents
Nikhil Kshirsagar::// WWW - Wpi - Edu
Nikhil Kshirsagar::// WWW - Wpi - Edu
I work in the Support Engineering Group (SEG) at Red Hat, forming the back-line team working
on customer cases which involve source code analysis, kernel and applications crash analysis,
and architecture of storage solutions involving lvm, multipath and raid for RHEL customers.
Responsibilities include working closely with Engineering to provide solutions to storage related
technical issues, analysing RHEL kernel as well as applications source code, userspace and
kernel debugging (x86_64 vmcore analysis) using gdb and crash and building custom RHEL
kernels containing select kernel patches for providing to customers.
I also work on several open source projects. I have made significant contributions to a Red Hat
product called pcp (www.pcp.io) which is used by a large number of RHEL customers for
performance analysis. I also maintain an internal product implemented in bash and python to
auto download customer case attachments to Red Hat servers, used by more than 500 associates
worldwide.
In my free time I work on the development of a Red Hat IRC chat bot, used by associates for
technical quizzes and learning. The bot can make rudimentary conversation.
(https://github.com/nkshirsagar/quizbot)
Used python at the web framework layer (flask+restful extension) and C at the device layer to
interface with the Skyera storage device api’s. The communication between python and C was
achieved using CTypes as well as pyobjects. Led a team of 3 engineers for the C development
and provided mentoring at the design level for the entire project. Spent time onsite at Skyera in
San Jose interacting with the client team and deploying the product.
Client: Solidfire
Worked on a VSS Provider for Solidfire (www.solidfire.com) making their storage boxes VSS
compliant.
Worked on the BMC Performance Assurance and BMC Capacity Optimization line of products.
Specifically worked on “Analyze”, a C++ module that receives input metrics from “collectors”
and produces a model for reporting and predicting IT system workloads. The collectors run on
the host machines, collecting a large number of system metrics to model the behavior of the
hardware from a historical perspective. The product is supported on all physical and virtual
platforms.
http://www.bmc.com/products/offering/BMC-Performance-Assurance.html
Worked on integrating BMC Capacity Optimization (BCO) with the Single Signon Framework
in BMC (Atrium SSO built on top of OpenSSO. Developed a framework which adds filters to the
deployment descriptor file of the web applications to successfully redirect authentication requests
to Atrium SSO following which access is granted to all sessions on the same browser. Used Java,
Tomcat and XML.
The product, known as Galaxy, is a storage appliance presenting a virtual tape library (i.e., one or
more virtual media changers, virtual media and virtual tape drives) as well as a network-
accessible file system (serving NFS and CIFS) and also serving as a replication target for other
Quantum systems.
Worked on linux packaging (rpm) and used Coverity toolset extensively to fix difficult to address
problems in the source code like memory leaks and freed memory reads/writes. Also worked on
customer escalations and enhancements.
Role: Development of SMI-S profiles so that the EMC storage box (Celerra) is “SMI-S
compliant”. Each profile tackles a certain functionality offered by the storage device. The
profiles are designed in Managed Object Format (MOF) and an in-house code generator (OSL#)
is used to generate C++ classes from the MOF files. Translating SMI-S requests to EMC specific
functionality involves adding layers of functionality between the SMI-S client and the underlying
software that manages the storage device. This involves understanding the underlying storage
framework that already works with its own CLI and knowing what to call when a certain request
is received from a SMI-S client. Also work on designing an indications and events framework so
that events receiveed from the underlying storage box are sent to the CIM or SMI-S clients who
may be interested in them.
Role: Specifically worked on development and support of the product on all major Unix
platforms including enhancements and customer reported escalations. Other responsibilities
included Solaris and Linux packaging, multi-threaded debugging of the application, memory leak
fixes and usability improvements.
Speech Detection
Designed and implemented an application that recognized speech using the Rabiner and Sambur
algorithm for speech detection. The system was implemented using C under Windows. Used
multimedia libraries on Windows. The algorithm was particularly useful for detecting speech in
the presence of background noise. For more information about this project, please visit
http://web.cs.wpi.edu/~claypool/courses/525-S03/projects/proj1/index.html
Other activities: Nationally ranked badminton player in India from 1990 to 1996.
Accolades at inter college technology exhibitions for software projects.
Played the lead guitar in several rock bands in Pune, India.
Learnt classical nylon-string guitar.
Enjoy bridge, chess and strategy video games for recreation.