Post Job Free
Sign in

Engineer Software

Location:
Fremont, CA
Posted:
September 16, 2014

Contact this candidate

Resume:

JANANI DEVARAJAN

Software Networking/OS/Sustaining Engineer

. C, Kernel programming, frameworks, hooks in OS, API

. Worked on ESX, Linux, Solaris, VxWorks, pSOS, C-Executive, platforms

. C-Scope, gdb, mdb, serial line debugging, basic system

administration/IT

. Application development, programming with C++, bash, OOAD,

. Test planning, functional/regression testing, kernel debugging

. System Independent Verification Test

. Linux scheduling, concurrency, familiarity with ARM, porting, SR-IOV

Projects

Staff Researcher, Futurewei (2012-2013)

Research, proof of concept and prototype Linux based device drivers:

Implement a storage subsystem, modified PMC-Sierra storage driver to new

operating system. The project started with changing the driver to a new PCI-

E based I/O concept, involving non-transparent bridging, and associated RPC

mechanism. Besides the storage subsystem, contributed to core areas of

software development for the larger project.

Member of Technical Staff, VMWare, Inc. (2006-2009)

As the first member of a team of networking-engineers for virtual and LINUX

networking components of ESX2.5-3.5, built a team with high technical

expertise, resolved several easy and difficult problems and test failures,

participated in test planning, reproducing customer problems in-house,

enhanced technical communication with QA team, learned and re-presented

newer technology to sustaining team, trained newer staff and more. To

mention a few technical details, some fixes were related to problems in

virtual Ethernet and virtual NIC, gateway value not set, race conditions.

Exposure to wireshark, tcpdump, netperf, ping, addresses et al.

Project ESX

For ESX3.x, the project involved cherry picking features and fixes that are

best made available to customers from the development code base, cross-

ported or appropriately integrated into the release with system testing.

This involved understanding subtle architecture differences, planning for

testing. Other contributions include evaluating the impact of these

changes, using perforce scripts, editing and porting code, presenting

details of change and testing, identifying and removing redundancies in

test set up, suggesting changes for technical documentation. For ESX2.x, a

minor release, the project involved customizing and containing changes as

compared to Linux behavior.

Member of Technical Staff, Sun Microsystems Inc. (2000-2004)

As part of a large networking technology organization, I contributed to

Solaris 9 and Solaris 10 development implementing newer features and

projects in C.

Project FireEngine: Scalability of Networking Stack in Solaris

Highly visible, fast paced project involved all areas of software

engineering for performance improvement in the networking framework of

Solaris. As team-member, designed a small portion of the packet event

framework, maintained source code using scripts involved in intermediate

gatekeeping, installed build machines, test machines, ran benchmarks such

as SPECWeb, netperf, identified and fixed bugs in wu-ftp test suite.

Project STREAMS

STREAMS development for Solaris involved core networking framework

enhancements and maintenance. As team-member, enhanced the flush band

feature for Solaris 9, resolved code related bugs, organized code base

besides solving other problems like runtime assertion failures.

Senior Software Engineer, Wipro Infotech Pvt. LTD, (1999)

In sustaining-engineering, resolved a few issues in BXX version of Tandem

UX related to fault-tolerance.

Software Engineer, CoSYSTEMS (I) Pvt. LTD, (1997-1999)

As the sole engineer supporting the product, proud recipient of an award

for a flawless release, developed portions of proprietary implementation of

STREAMS in C for real-time operating systems VxWorks, pSOS and C-EXECUTIVE.

Project CoSTREAMS (STREAMS Development)

CoSTREAMS is the proprietary implementation of the STREAMS standards.

This project involved two major enhancements, porting to a different

operating system and parallel customer support with bug fixing for released

versions. Key contributions to mention include, addition of the

"Asynchronous Notification Mechanism", addition of "Zero Copy" feature for

data transfer, porting CoSTREAMS to CEXEC, a RTOS, release of CoSTREAMS as

a product, System Independent Verification Test Suite for CoSTREAMS.

Project Distributed Streams Architecture (DSA)

DSA is a facility that enables two streams modules to reside on different

hardware cards and provides communication between them. The DSA was one of

the modules in a networking stack project for BPL, India. As engineer

responsible for CoSTREAMS, my contributions were: Design and implementation

of the DSA, planning, implementation and execution of Unit Testing,

integration with DLPI layer and system testing.

Project CoSIMULATOR : Internship towards Masters degree

CoSIMULATOR is simulation of a Real Time Operating System as an

UNIX application. The CoSIMULATOR includes all the essentials of an OS:

scheduling, memory management, clock and IPC. As intern, my thesis was

based on my efforts in implementing CoSIMULATOR on SOLARIS and Sun OS.

Summer Internships for fun

C and Unix programming in Coats Viyella, Madurai, India. As a first year

student of computer science, picked up editor rules of "Vi", basic Unix

system administration commands in the two weeks in the IT department.

Pipes and processes: BHEL, Trichy, India

As a second year student, worked on using system calls such as fork,

exit, pipes to simulate a distributed banking application and data

transfer from one process to another.

Program the storage of dominoes in C, with number adjacency. The algorithm

was convoluted, and display of dominoes was completed by a friend.

Serial communication over RS-232 between two PCs:

Participated in a few aspects of the project such as design meetings

including, token presence for transmission, algorithm cases verification

via flow-chart inspection, sanity testing. Interesting thought from the

project: time division.

Build and Release

Configuration management, understanding of source code control systems such

as CVS, SCCS, Perforce, diffs, patches, evaluation of diffs, complete

understanding of software development lifecycle, good analysis and problem-

solving, adherence to standards, work towards goal, detail-oriented,

several years' experience in sustaining, all contributing to performing

daily/weekly tasks while planning and improvisation are in consideration.

Other Experience: Volunteer, service

Good score on professional effectiveness program test, help with setting up

an assembly line for service, email response in accessing a database and

pointing to the right non-profit-organizations in India.

Uniqueness

Highly diligent software engineer, with exposure to large scale systems

with well-defined modules, smaller projects from design to finish, three

design docs to personal credit, good basics in databases and SQL, good

experience in all tasks of a typical day from documentation till

integration, exceptional communication skills, customer interactions, cross-

organizational work experience, excellent team-player, good time

management.

Some situations warrant coming up with counter examples, and some require

the use of better sense gained from experience thus far to be applied

appropriately to current problem at hand.

Interests: Programming game/puzzle solutions in C++, such as Sudoku,

Dominoes.

Education

Certificate program in Linux, C++ (January 2006 - June 2006, UCSC

Extension)

Master of Computer Applications (June 1994 - March 1997, Madurai Kamaraj

University, Madurai, India)

Bachelor of Science (June 1991 - March 1994, Fatima College, Madurai,

India)

Phone: (408)-207-605 Email:

******.*********@*****.***

References: Provided upon request



Contact this candidate