Saurabh Chokshi is seeking a software engineer position and has over 5 years of experience in software development. He has a Master's degree in Computer Science from USC and a Bachelor's degree from Hemachandracharya North Gujarat University. Currently he works at Motorola as a senior software engineer where he has developed device drivers, migrated platforms to 64-bit, and implemented network applications. Previously he worked at IBM India and Tata Power Company on projects involving distributed systems, embedded systems, and networking.
1. SAURABH CHOKSHI
530, Mansion Grove, Apt #316 Phone: (409) 201-0624
Santa Clara, CA-95054 E-mail: schokshi@usc.edu
♦ OBJECTIVE:
Seeking the full-time position for Software Engineer to add significant value to the organization and gain valuable
experience
♦ EDUCATION:
M.S. Computer Science Graduated: December 2009
University of Southern California, Los Angeles, CA GPA: 3.62
B.E. Electronics & Communication Graduated June 2006
Hemachandracharya North Gujarat University, Gujarat, India GPA: 3.99
♦ WORK EXPERIENCE:
Motorola, Inc, Santa Clara, CA as a Senior Software Engineer June 2009 – Present
• Migrating 32-bit to 64-bit Linux platform with Centos 5.4 Distribution for H.264/AVC encoder applications based
on C/C++ STL and pthread libraries, proprietary drivers and 3rd party drivers.
• Implementing the USB based device drivers for LCD and 6 button controller for the front panel of 3 rd Generation
H.264/AVC encoders.
• Developed the H.264 packetization network layer application based on C/C++ and socket programming to
implement RTP for H.264/AVC encoder on 32-Bit Linux platform.
• Implemented the PCI and MPEG Encoder based character Device Drivers to transfer the uncompressed and
compressed MPEG data between Intel Core 2 Duo processor and ARM processor for H.264/AVC MPEG
Encoders. Implemented the sysfs or UDEV implementation for drivers used in MPEG Encoder to create the
device file dynamically through kernel modules.
• Developed I2C device drivers to read the data module and control module for Power Supply used in MPEG
Encoder. In addition to that, design the proc file interface to expose the data for user space applications.
• Analyzing and customizing the boot loader initialized RAM disk image for Target (Linux) file system for MPEG
Encoder.
IBM India Pvt. Ltd, Pune as a System Engineer November 2006 – December 2007
• Developed customized Serial Peripheral Interface (SPI) device drivers in Embedded C to transfer the MPEG
and JPEG compressed data from ARM processor (ARM 9) to AVR microcontrollers (ATmega32) and FPGA for
distribution on multiple channels.
• Designed and Implemented an Embedded Firewall for Distributed Servers on AIX that consists of intrusion
detection and TCP based multithread server in C/C++ to manage the signature and system log data from several
firewall connected in the network.
Tata Power Company Ltd., Mumbai as an Intern January 2006 – June 2006
• Designed and Developed Distributed Smart Sensors for the data center, interfaced with Ethernet Card to transfer
the sensor data from the data center to the centralized server for analysis.
• Implemented an RTOS on AVR Microcontrollers for Distributed Smart Sensors with multi-processing and
scheduling for the priority processes in high level Programming language C and inline Assembly language on
CodeVision AVR Compiler.
♦ RELEVANT COURSEWORK: - Operating Systems Concepts, Security Systems, Distributed Systems, Computer
Networks, Distributed and Inter-networking System, Computer Architecture, Multimedia System Design, Web
Technologies, Artificial Intelligence
♦ ACADEMIC PROJECTS:
• Designed and Implemented a Software Firewall (Worm fingerprinting & filter algorithm) in Linux Kernel using
Netfilter framework and Netlink Sockets for user space to kernel space communication.
• Implemented a Multi-threaded and multiprocessing operating system (like UNIX) including system calls and
2. memory management on NACHOS simulator.
• Programmed a Distributed Passport Office with maximum 5 servers based on the concept of time stamping and
remote procedure calls (RPC) on NACHOS simulator.
• Developed an ATM Services using Java RMI.
• Designed a TCP/IP and UDP Multicasting based Peer-to-Peer File sharing and Chat servers in Java and C++
with the implementation of Java Swing and Curses in C++ for the Chat window with the help of Netbeans tool.
• Implemented a Multi-threaded ATM Server in Java and C++ based on TCP/IP sockets and using pthreads in C+
+ and java multithreading.
• Implemented a Web based Online Shopping Cart using HTML, JSP and AJAX with MYSQL Database, Client
Side Scripting in JavaScript and Server Side Scripting in JSP.
• Implemented Virtual Marketplace using SOAP body message and WSDL, XML, XSLT for displaying the GUI.
♦ SKILLS:
• Platforms : Linux CentOS 5.3, Fedora Core 6, Red Hat 5, UNIX, Windows.
• Micro-Processor : ARM 9/7, AVR, Motorola HCXX Series, Intel Core 2, x86
• Languages : GNU C/C++, Java, HTML, PHP, Bash Shell Scripting, JavaScript, CSS, XML, XSLT,
AJAX, SQL
• Database : MS-SQL Server, MySQL
• Tools : gdb debugger, JTAG Debugger, CVS, SVN, Kernel Tracers, Netbeans IDE, Eclipse,
RPM package building
• OS Concept : Memory Management, Process Scheduling, Bootstrapping, File Systems, Distributed
Systems
• Advanced Concept : MPEG, MPEG4, H264/AVC, Multi-threading in Java and C++, Java RMI, pthreads
• Networking Concept : RTCP, RTSP, SDP, Routing Protocols, TCP/IP stack, HTTP, WiFi, WiMAX, OSPF,
BGP, 802.XX Wireless protocols.
• Security System Concept : Cryptography, AES, DES, RSA, PKE, Kerberos, Spyware, Firewall, TPM, IPSec
technology, IDS, IPS, DDoS.
♦ AWARDS AND ACHIEVEMENTS:
• Awarded super performer and fast learner IBM Spot award in September, 2007 at IBM India Private Limited, Pune.
• Achieved 1st Prize in the National level Project Competition at U.V. Patel College of Engineering, Mehsana on
“68HCXX Microcontroller based Automated Metro Railway System”.