GAURANG KHETAN **** Red Hawk Cir Apt E***
abqb5n@r.postjobfree.com Fremont, CA 94538
http://gaurang.org 650-***-****
Objective:
Technical Leadership in the area of systems programming in an intellectually challenging work
environment involving interesting technology.
Education:
Master of Science in Computer Science May 2004
University of Southern California (USC), Los Angeles, CA.
Bachelor of Engineering in Electronics July 2001
University of Pune, India.
Computer Skills:
Development languages: Expertise in C, Skilled at C++, Familiar with Perl, Assembly, Java
Experience in: Multi-threaded Multi-Core Network Processor programming, Linux/FreeBSD/IOS
kernel programming, device drivers, new hardware board bring-up, platform level software, file-
systems, operating systems, embedded systems.
Network Programming: Network processor programming, Ethernet driver, Socket programming,
Client-Server, various networking protocols like TCP, IP, UDP, Ethernet, ARP, etc, file sharing
systems, ad-hoc networks
Web: Perl, PHP, Ruby on Rails, HTML, CSS, JavaScript, XML, Web Services (SOAP, WSDL),
SQL, Oracle.
Work Experience:
Sr Software Engineer Apple Inc, Cupertino, CA May 11-present
Working on a new scalable server side service for iOS devices.
Cofounder iNumbr Jan 08-Dec 08
Developed a website, in part-time, with a friend in the area of consumer VOIP telephony, which managed
to reach 400,000 users. The website allowed consumers to obtain free, disposable phone numbers that
route calls to their personal phone, and thus allow them to maintain privacy when needing to reveal phone
numbers in non-private settings like craigslist, ebay, matrimonial/dating websites, etc We also sold our
solution to a few businesses, earning annual revenues over $100,000.
Sr Software Engineer IV Cisco Systems, San Jose, CA Feb 05-Apr 11
Worked on several complex systems projects in the general area of Platform Software in a business unit
dedicated to making Mobile Internet gateways like GGSN, PDSN, LTE, Wimax, etc. The role involved
intricate system design and development (often at product architectural level), complicated debugging
through a large codebase, in an important role while showing leadership in several technical areas in the
team. The main language used was C, and some assembly. Work included:
Development of software running on Intel IXP network processor in the data plane of the product
to process packets optimally at high speeds in a multi-core and multi-threaded architecture with
both parallel and pipeline designs, requiring low-level coding that extracted most computing
power off the processor architecture.
Worked on porting and bringing up Cisco IOS and Linux operating systems on a new hardware
platform, a complex system involving several processors (Intel IXP, MIPS, PowerPC, Xscale
ARM, Nitrox, etc) and several custom FPGAs/CPLDs. This provided experience in kernel
bringup, hardware/processor initialization/configuration/architecture, Linux kernel powerpc
platform code, device drivers including Ethernet driver, bootloaders, networking protocols, etc.
Also developed offline diagnostics software for the board.
Developed numerous platform features for our product, including linux user-space device driver
infrastructure, multi-threaded health-monitoring software, statistics and control protocol software
on QNX operating system, control packet prioritization in linux network driver, etc.
Provided leadership in all things Linux in the team, and assisted in bigger picture work like
analyzing linux operating systems within cisco to identify useful components, evaluating software
architecture options for next platform (virtualization of IOS on Linux, etc)
Software Engineer Paypal (eBay Inc), San Jose, CA Mar 04-Oct 04
Worked on implementing new product features in C++ and SQL in a Apache/Oracle/Linux
environment within an industrial-strength code base of a scalable, reliable, multi-tiered, multi-
component website that impacts more than 50 million customers.
Worked on Paypal s industry-leading anti-fraud system with features like implementing anti-fraud
card models, address authentications, third party communication in XML, client-servers, etc.
which required understanding of web protocols and skills in programming at application, database
and network levels; and involved working closely with other engineering, product, content,
design, QE and other groups in the product development lifecycle.
Software Developer (Internship) Lightline Software Inc, Palo Alto, CA Aug 03-Dec 03
In an exciting fast-paced Storage Security startup, worked on storage system software involving
kernel programming in FreeBSD UNIX, with major features being:
Designed and implemented non-volatile caching in FreeBSD UNIX ATA/IDE disk device driver.
Wrote a simple volume manager used to form a higher capacity logical volume by doing software
RAID Level 0 over existing hardware RAID Controller (3ware Escalade) storage units.
Developed a configuration system consisting of a Java Applet front-end and Perl back-end.
Developed a client-server system with a simple communication protocol.
Assisted creation of a stack of pre-allocated inodes in the file system.
Research Assistant (Part-time) Prof. Massoud Pedram, EE Dept, USC Jun 02-Aug 03
In a team of two, ported Linux kernel to an XScale-based embedded system, which involved
modifying low-level details like configuration of memory controller, PCI bridges, interrupt
routing, and device drivers of PCMCIA, etc.
Implemented a power manager in Linux kernel for an embedded system, using a dynamic power
management algorithm to shut down devices. Modified device drivers of PCMCIA and IDE.
Programming Projects: (University Requirements or Personal projects)
Implemented an ad-hoc wireless network of embedded systems: Implemented Ad-hoc Positioning
System which involved forming an ad-hoc network of embedded Berkeley motes and
implementing a communication protocol so as to perform localization using hop-based distance
estimation. Used C on TinyOS embedded operating system with resource constraints and low
wireless network reliability.
Parts of Nachos Operating System: Implemented core parts of Nachos Operating System, an
instructional operating system - thread synchronization, virtual memory, file systems, and
multiprogramming. Used C++ on UNIX.
Built a Peer-to-Peer Network File System: Developed a distributed file sharing system using peer-
to-peer mechanism (like Kazaa). Used C++ on UNIX.
Retail Website: Developed a retail website with frontend in Perl/PHP and backend in Java/MySQL
Computer Virus in MS-DOS (Personal): Developed a self-encrypted, polymorphic computer virus
that self-replicates by infecting MSDOS executable files. Used x86 assembly language.
Othello-playing computer program (Personal): Developed a program that plays Othello, a strategy
board game. Uses Artificial Intelligence Game Playing algorithms. Used VC++ on MS Windows.
Papers:
Comparison of Memory Management Systems of BSD, Windows and Linux May 2002
A course term paper. Not a publication.
Notable:
Represented USC in the regional ACM International Collegiate Programming Contest held on
November 10, 2001. Competition tests problem solving and programming skills.
Presented Apollo Testbed 2 research project with Prof. Massoud Pedram at Design Automation
Conference 2003, Anaheim, CA.
Scored in GRE (Graduate School Entrance Test): 2290/2400 (Verbal: 97% Quantitative: 98%
Analytical: 98%). And GMAT: 740/800 (97%).
Member of Glia Society, society of people with IQ higher than 99.9% of human population.
Came 1st in city-wide IQ and Aptitude test in Pune, India, conducted by DataPro in 2000, and was
awarded a first prize of Rs 20,000.
Positive Qualities:
Natural programming skills, conceptual thinking and memory, ability to understand complex
concepts, fine logical/analytical thinking, passion to work.
Other:
Worked as Contributing Writer to Daily Trojan, the USC student newspaper.
Have a Green Card. No visa required to work in the United States.