Arup Mukherjee
|
San Jose, CA 95132; (408) 347-1354
http://www.mukherjee.net/arup/
arup @ mukherjee.net
|
Professional Interests
|
Building high-performance, scalable systems in a startup or
advanced development environment. I am interested in
distributed systems, operating systems, electronic commerce,
networked applications, mobile computing, and computer
security.
|
Education
|
CARNEGIE MELLON UNIVERSITY:
Doctor of Philosophy
(Ph.D.) degree in Computer Science. |
November 1998
|
Thesis work:
Developed techniques and infrastructure for building online
services that work effectively in the face of bandwidth
constraints. Designed, implemented and evaluated the
Oasis system wherein Java agents and Web-based services
hosted by a network of programmable proxy servers
cooperate to optimize communication by sharing data and
capabilities within the network and at end-user
devices. Oasis implementation was targetted at services
deployed on the World Wide Web for access via dialup
and mobile clients. Thesis advisor: Professor Daniel
P. Siewiorek
|
CARNEGIE MELLON UNIVERSITY:
Master of Science (M.Sc.) degree in Computer Science.
|
May 1993
|
Coursework: programming languages, operating
systems, computer systems, algorithms, parallel
algorithms, distributed programming environments, and
artificial intelligence. Noteworthy seminar courses attended
include courses on Mach 3.0 kernel internals and on mobile
computing.
Research: Investigated means of benchmarking the
robustness of complex software systems. (Published in IEEE
Transactions on Software Engineering, June 1997.)
Conducted as part of the Fault Tolerant Mach effort, with
Professor Daniel P. Siewiorek.
|
UNIVERSITY OF PENNSYLVANIA:
Bachelor of Science in
Engineering (B.S.E.) degree
|
May 1990
|
Major: Computer Science and Engineering;
Graduated Summa Cum Laude, with General Honors
distinction.
Senior Project: Design and prototyping of the
hardware and software for a MC68008/X-windows
voicemail system.
Coursework: Computer Science and Engineering
curriculum tailored for emphasis on software and
hardware systems.
GPA: 4.00/4.00 (Computer Science and
Engineering), 3.82/4.00 (Cumulative)
|
Experience
|
YAHOO!, Inc, SANTA CLARA, CA |
May 1999 - present
|
Senior Software Engineer, and
Technical Lead & Manager, Yahoo! Shopping
|
Senior Software Engineer, Remote Merchant
Integration infrastructure development. |
May 1999 - February 2000
|
One of a team of four engineers who designed and implemented
programmable proxy server infrastructure used to transparently
integrate the web sites of external clients into Yahoo!
Shopping. The proxy system developed adds Yahoo! branding,
integration with Yahoo! services, and extracts and logs
transactions on the fly while servicing several million daily
pageviews to over 200 large brand-name merchants. Was
responsible for several large subsytems written from scratch
in C++, and was also heavily involved in operationally
launching the system and in developing all required
deployment, monitoring, management and server redundancy
mechanisms. Promoted to technical lead and manager of this
engineering group in February, 2000, and to senior manager
leading this group in October, 2001.
|
Technical Lead & Manager/Senior Manager, Remote Merchant
Integration Infrastructure development.
|
February 2000 - present |
Led efforts to greatly increase the stability,
scalability, flexibility and efficiency of the Remote
Merchant Integration proxy system while adding support for
new merchants and new services, including several
applications from outside shopping. Duties included
architecting many system changes to attain the
aforementioned goals, guiding and mentoring up to 8 other
engineers, hands-on development of technically complex parts
of the system, management of the operational servers, leading
the internationalization effort, supporting 9 international
deployments and participating in recruiting efforts.
|
CARNEGIE MELLON UNIVERSITY, PITTSBURGH, PA |
September 1991 - March 1999
|
Research Fellow, Teaching
Assistant and Volunteer Systems Programmer & Administrator |
Varied research, teaching, and systems programming and
administration responsibilities.
|
Research:
- Developed, implemented as a proof-of-concept,
and evaluated a system for benchmarking the
robustness of operating systems platforms. This
object-oriented robustness benchmarking scheme has been
documented in a paper in the IEEE Transactions on
Software Engineering, July 1997.
- Designed and implemented an infrastructure of
enhanced Web proxies to support the effective
deployment of Java online services in
bandwidth-constrained environments. This research
was the basis for my doctoral dissertation.
Teaching duties:
- Operating Systems: Guided students in the
implementation of an operating system, including
virtual memory and file system, for a SPARC-like
virtual machine. Designed and graded
assignments. Awarded the 1996 School of Computer
Science graduate student teaching award for
this work.
- Distributed Systems: Guided students in
the design and implementation of systems for securely
conducting electronic commerce over the World Wide
Web. Designed and graded assignments.
- Computer Systems: Grading and
homework design.
Selected voluntary efforts:
- Have ported and supported the in-house
automated remote backup system for workstations running
Linux and AIX. Porting involved enhancing the client
software to understand the on-disk data formats of the Linux
second extended filesystem and the AIX journalled
filesystem respectively.
- For several years, compiled, installed, adapted,
enhanced, and debugged the local installation of
XEmacs and associated subsystems (e.g. email), used daily by
about 150 people on a multitude of platforms: DEC
Alphas (OSF/1), HP 9000 (HPUX), Intel platforms (Linux
and NetBSD), DECstations (Ultrix), SGI workstations
(IRIX), Sun workstations (Solaris and SunOS), and
older platforms running under Mach.
- Was instrumental in the development of, and ongoing
support of, the large software environment for a network of
AIX workstations installed locally.
- Until early 1996, enhanced, maintained and distributed (on
the internet) the gnuserv package which enables
remote interaction with any of the emacs family of
editors running under a unix system.
|
SUN MICROSYSTEMS LABORATORIES, MOUNTAIN VIEW, CA |
Summer 1993
|
Summer Research Intern, Spring Project
|
Spring OS filesystems development. |
Converted the distributed filesystem of SpringOS (an
experimental object-oriented microkernel operating system)
to a stackable filesystem composed of file encapsulation and
coherency layers. Enhanced the coherency support to handle
arbitrary stacked filesystem configurations. Awarded a
vice president's letter of recognition and salary bonus for my
contributions.
|
SUN MICROSYSTEMS LABORATORIES, MOUNTAIN VIEW, CA |
Summer 1992
|
Summer Research Intern, Spring Project
|
Spring OS virtual memory system performance evaluation.
|
Analyzed the virtual memory system of SpringOS.
Characterized its performance, added functionality and
significant performance improvements. Was awarded a
vice president's letter of recognition and salary bonus
for my accomplishments.
|
IBM T. J. WATSON RESEARCH CENTER, HAWTHORNE, NY |
May 1990 - September 1991
|
Systems Programmer and Researcher, Large Systems Group |
Filesystem cache management enhancements, affinity-based
scheduling implementation, and analysis of virtual memory
management in Unix systems; conception and prototype
implementation of a cluster filesystem for RS/6000 workstations.
|
Investigated the applicability of affinity-based
scheduling to Unix-based parallel processing (paper in
Winter Usenix, 1992), and investigated thrashing in
real-addressed caches due to virtual memory
management. Also implemented and evaluated frequency
based buffer-cache management in the 4.3 BSD
filesystem.
Parallel AIX Fileserver Project: Designed and
implemented much of the low-cost disk sharing scheme
in the project prototype via kernel extensions, device
drivers, and modifications to the journalled
filesystem under AIX 3.1 on the IBM RS/6000.
|
UNIVERSITY OF PENNSYLVANIA, PHILADELPHIA, PA |
June 1987 - May 1990
|
Systems Programmer, General Robotics & Active Sensory Perception
(GRASP) Lab
|
Software support and development for image processing
applications.
|
Conceived, implemented, and maintained a large
extension to the device independent image processing
software library in use at the lab. Work included
network support using TCP/IP sockets, and design and
implementation of a set of device independent output
routines for X windows (X10R4 thru X11R4), postscript
printers, and IKONAS and DATA TRANSLATION frame
buffers.
|
IBM T. J. WATSON RESEARCH CENTER, HAWTHORNE, NY |
Summer 1989
|
Summer Intern, Highly Parallel Systems Group |
Maintenance of software and hardware systems for the
Highly Parallel Systems group at IBM.
|
Maintained and administered a network of IBM RTs
running Mach. Also modified the Mach kernel to
local needs, assembled and installed new equipment,
and installed and supported the Andrew File System and
the X Window System.
|
Publications
|
A. Mukherjee, ``Supporting Online Services in Environments
Constrained by Communication,'' Ph. D. Thesis, CMU CS
Tech Report CMU-CS-98-172, November 1998.
|
A. Mukherjee and D. P. Siewiorek,
``Measuring Software Dependability by Robustness
Benchmarking,''
IEEE Transactions on Software Engineering, June 1997
issue. (An earlier version was published in 1994 as
CMU CS Tech Report CMU-CS-94-148.)
|
M. Devarakonda, A. Mukherjee and W. Kish,
``Meta-Scripts as a Mechanism for Complex Web Services,''
Proceedings of the Fifth Workshop on Hot Topics in Operating
Systems, May 1995.
|
A. Mukherjee and D. P. Siewiorek,
``Mobility: A Medium for
Computation, Communication and Control,''
IEEE Workshop on Mobile Computing Systems and
Applications, December 1994.
|
M. Devarakonda and A. Mukherjee,
``Issues in Implementing Cache-Affinity Scheduling,''
Proceedings of the Winter Usenix 1992, January 1992.
|
Honors and Awards
|
August 1996
|
School of Computer Science Graduate Student Teaching
Award for ``excellence in teaching and dedication to
students and to
the academic community.''
|
August 1992, August 1993
|
Letters of recognition and salary bonuses for
contributions to the Spring project at Sun Microsystems Labs.
|
1991, 1990, 1989, 1988 - present (respectively)
|
Honors Society Memberships: Sigma Xi, Phi Beta Kappa,
Eta Kappa Nu, Tau Beta Pi.
|
January 1988 - May 1990
|
Benjamin Franklin Scholar at the University of
Pennsylvania (special honors program for top 7% of students)
|
1988, 1989, 1990
|
Dean's List, University of Pennsylvania.
|
May 1987
|
Second place, Class of 1880 mathematics exam, open to all
freshmen at the University of Pennsylvania
|
June 1986
|
Graduation award for ``setting
academic standards for others to strive to emulate'' from the
International School of Lusaka.
|
1985 and 1986
|
First prize, annual National Mathematical Problems
Contest, sponsored by the Zambia Association for
Mathematics Education. Only person in the history
of the contest to win twice.
|
|
Computer Skills
|
World Wide Web
|
Java, HTML, HTTP, Apache, Javascript, proxy server architecture,
squid, server farm redunancy and load balancing, caching, some
DHMTL.
|
Languages
|
C++, C, Java, Perl 5, HTML, Tcl/Tk, Pascal,
shell programming (csh and sh), Lisp, Scheme.
|
Operating Systems
|
Thorough knowledge of Unix systems including Linux, FreeBSD
4.1 and 2.2, AIX 3.2, BSD 4.3, SunOS, Solaris, and Mach 2.5. Some
knowledge of Windows platforms.
|
Unix Kernel
|
I have worked with the internals of AIX 3.1, BSD 4.3, and
Mach 2.5 in the areas of scheduling, filesystem (including
the AIX journalled file system) and virtual memory
management. I have modified kernels directly in these
areas, and have also written device drivers, virtual file
systems, and system calls.
|
Unix Software
|
most standard unix tools, including X11, AFS, NFS, Netscape,
apache, kerberos 4, TeX, LaTeX, TCP/IP, lex, yacc, sed,
GNU Emacs/XEmacs.
|
|
Personal
|
- I am a legal permanent resident of the United States.
- I am a Canadian citizen, a native speaker of
English, and a legal permanent resident of the United States.
- I studied French for many
years, and retain limited ability in spoken and written
French. I also speak Bengali fluently.
|