You are on page 1of 19

Kumar Thota

Mob: (518) 419-3330 Email: kmrt10@gmail.com


Professional Experience

Over all 12 years IT experience.

Over 7 plus years of highly motivated, quality oriented experience as a C, C++ Developer in
software development which includes user interaction, system feasibility study, requirement
analysis, design, development, testing, configuration, client interaction and support.

Extensive experience in domain areas as Telecom Intelligent Networks, Communications,


Finance systems.

Experience in very high-scale, high user base, real time performance oriented software
development.

Part of the team that successfully designed, developed and deployed first phase service for Diff
Projects.

Experience on kernel using AIX, UNIX, and Redhat Enterprise Linux, Ubuntu Linux.

Hands on experience in working on telecom standards SS7, TCP/IP.

Experience in C, Linux Internals, Multithreading, semaphores, task switching, IPC, preemptive scheduling, and memory management, Socket programming, TCP/IP Stack, UDP,
Routers and Switches, Remote Procedure Call, Net Work Programming. Experience in VxWorks
and Embedded Linux.

Experience in Java, Java Script, J2EE, XML, JDK 1.5, JNI, JDO, JDCP, Vectors, Hash Map,
EJB, Web Services, Design Patterns, and makefile, SQL, Oracle Store Procedures, Pro*C, SQL
Server, My SQL, Triggers and Oracle.

Hands-on Experience on using Hadoop Database implementation.

Experience in ARP, ICMP, IP, TCP, SMTP, VPN, Congestion Control, Mac Bridging, VLAN, NAT,
NAPT, Dynamic Routing with OSPF, BGP, DHCP, OLAP, VRRP Protocols, MPLS, Firewalls, IPS,
Intrusion detection, multi-vendor.

Hands-on skills with GNU development tools (GCC, AutoConf, Auto make) and UNIX shell
scripting, testing.

Worked on Set top boxes, UPnP, DOCSIS, Metrowerks, Lua, VM.

Worked on Linux 2.4/2.6 Kernel, File system, build environment, tool chain, platform, Board
Support Package(BSP), device drivers and hardware.

Worked on large scale Domains, Portals, Services

Worked on Python, TCL, Expect.

Good Working Knowledge on AAA, GSM, CDMA, 3G,4G, LTE, WiFi, Wireless RF, Blue Tooth
and IEEE 802.11.

Implemented SMTP applications using Socket Programming.

Exposure to VoIP.

Knowledge on C#, Apache CAMEL

Knowledge in EJB, Web Services and Design Patterns.

Knowledge in System Administration in Solaris.

Good Coding & Debugging Skills.

Good communication and interpersonal skills.

Education

Master Of Computer Application from Osmania University from


Hyderabad, India.

Technical Skills
Platforms: UNIX (AIX, Solaris, HP-UX), Microsoft Windows operating systems, Linux (Red Hat) HP,
Open BSD, Sun Solaris OS, VxWorks.
Programming Languages: C, C++, Java, Pro*C, Network programming, Unix, Open BSD Kernel
Programming, Process Management, Memory Management,
Interprocess Communication (pipes, Message queues, FIFO, Shared
memory and semaphores), Multi threading, Power Builder, ProC, SQL,
PL/SQL, VxWorks.
Relational Databases: Oracle 9i, Oracle11i, JDBC, JDCP, MySql, SQL Server, PostgreSql, Power
Builder.
Web Applications: JavaScript, UNIX Shells, Perl, XML, HTML.
Development Methodologies: OOAD -UML, Design Patterns, RUP.
Tools: MQ Series.

Telecom & Networking: SS7, GSM, CDMA, TCP/IP (Internals, ARP, RARP, ICMP, IP, TCP, UDP, SMTP,
FTP, DHCP, Congestion Control, Mac Bridging, Dynamic Routing with
OSPF, OLAP, BGP, DHCP, 3GPP, 3G, 4G, LTE

Project Details

Syniverse Technologies, FL Jan12 - Jan13 Senior Software Engineer


Project: Call Processing
Syniverse Technologies works for Mobile Roaming feature for Mobile subscribers supporting all over the
world. It has Clients like Verizon, Sprint, China-Tel, TATA, Mobile Operations in Europe and all over the
world. Syniverse products provide the facility for Mobile subscribers of the mentioned clients having
roaming feature worldwide. The feature provided by Syniverse Technologies gives their mobile the facility
to connect the call by using same carriers with different country/state or Different carriers either in the
same country or different countries.
Responsibilities:

Worked on those products to support new features/fixes based on the Enhancement/Issues on


the Tickets using HP-Unix(Tandem), C, C++, GSM, CDMA, TCP/IP, IPC to support the latest
technologies like 2G, 3G.

Worked on to add the feature on the subscribers mobile or fixed whenever a ticket was raised.

Worked on Requirement Analysis, Design and Development, Test Cases, Test Results, Release
Form, Release Notes along with code add/changes and prepared the Documents for each step for
the Feature/Fix.

Conducted required meetings/conference call for the approval for above steps and documents
along with code changes for these new feature or fixes from the required groups.

Worked on the scripts to test the code for Call registration, location update, AAA, Route
Requesting, SMS-MO, SMS-MT between the same individual network like GSM and/or CDMA or
for both networks.

Configured the scripts to test these features and exchange the messages between VLR, HLR,
MSC, SMSC and Syniverse Call Processor and observe the messages like forward short
messages, request/response based on the network or between the networks. Server is
implemented on RAID.

Environment: C, C++, AAA, HP-Unix(Tandem), Multi Processor, GSM, CDMA, SCCP, TCAP, 2G, 3G,
Client/Server, RAID, TCP/IP, IPC, PLSQL, CodeWright, Medusa, Tandem SQL.
Wal-Mart, AR Sep11 - Dec11

Senior Software Engineer

Project: Hadoop Database Implementation.

Worked on the Data Migration Project using Hadoop, Sqoop (Sql to Hadoop), Oozie, Hive, qJava, XML.
Converted the Big data from Wal-Mart Database into Flat files for backups. Understood the Wal-mart's
DDLs and DMLs of Database.

Responsibilities:

Worked on implementing the hadoop database.

Worked on implementing the XML files as part of the development.

Worked on creating the database schema for mapping the Database tables of packages into
Hadoop database.

Worked on the Sqoop for testing the hadoop data base similar to SQL Queries.

Worked on File Handling, Telnet, FTP, RAID, vi editor.

Environment: JAVA, Hadoop, Sqoop (Sql to Hadoop), Oozie, Hive, File Operations, Telnet, FTP, XML,
Oracle.

Emerson Networks, CA Apr11 - Aug11


Senior Software Engineer

Project: Dell Remote Installation Application.

Worked in Avocent Technologies is part of the Emerson Logistics, it supports different projects on
controlling systems using embedded software/firmware like remote installation/control the servers and
desktops, controlling the electricity on the boards in Data centers etc.

Responsibilities:

Worked for Firmware project on Dell Remote installation application using C, C++, TCP/IP, I2C,
Inter process, TCL, QT.

Developed and/or maintained the embedded software applications on Linux.

Debugged and enhanced the complex systems with data communications, real-time data
acquisition, and hardware interface modules.

Worked on the issues and found the root-cause of customer-reported firmware issues, and
provided necessary fixes by modifying the code, applied the patches.

Worked on mass storage devices and KVM technology or graphics compressions and also
involved for documentation and performed other duties as assigned.

Worked on Linux build and release technology. Worked closely within a team and collaborate
with other teams based on the situations.

Environment: C, C++, Linux, TCP/IP, Socket programming, Firmware, IPC, My SQL, Tcl, Qt Framework.

Oracle Corporation/IBM, CA Jul10 - Mar'11 Senior Software Engineer

Project: IBM-Fusion Applications Project


Worked onsite at Oracle Headquarters on the IBM Fusion Applications provisioning project. This project
was for migrating Fusion Applications from Linux to IBM Power Machines configured as LPAR. This was

an installation automation project and it had scripts which included for predefine, pre-installation,
downloading the software from the Cloud, installation, post-installation, configuration pre-execute,
execute and post-execute. The installation process includes for Fusion Application Provision Framework,
Oracle 11g Database, Oracle Identity and access Management components and running some of the
repository creation utilities etc. Involved in running the different targets on AIX Power Systems for
provisioning of PRJ module, each target is responsible for pre-configure, configure, install, post configure,
start and shutdown the domains during the provisioning process.

Responsibilities:

Worked on Ant scripts build for code written in C, C++, J2EE and python scripts which are getting
generated by the targets and while running each target, identified the issues, fixed the issues
when arose.

Worked on features like Policy Store, IDM for Authentication and authorization using the LDAP,
Web Gate Installation and configuration, configuration of applications and Policy Manager,
configuration of single-sign-on components, configuration of SSL, seeding of policy, credential
and identity seed data to IDM, Domains and Servers.

Worked on the servers are implemented using RAID.

Worked on Testing for targets, when run each target and checked for all polices and credentials
were correct, checked the database, permissions, authentication and authorization, services,
portals, domains, certificate, web services, other platform and portable issues, wiring, used the
Debuggers.

Environment: C, C++, J2EE, UNIX, AIX Power Systems(LPAR), Web Logic, Ant Build, services, portals,
domains, certificate, web services, Web Gate, SNMP, python, TCP/IP, HTTP, XML, PL/SQL, Web Tier,
IDM, LDAP, SSL, APM, Oracle.

Verizon Data Services. Feb10 - Jun10


Senior Software Engineer
Project: Verizons Motorola Set-top Boxes.
Worked on Verizons Motorola Set-top Boxes for FIOS TV. They were used to relay the TV programs,
games, Widgets for Facebook, Twitter etc. Verizon having its own VZSDK Interface component is
compatible for Motorola and Cisco set-top boxes and the VZSDK interacts with the low level drivers of
particular set-top boxes. Graphical user interface layer exists on top of VZSDK for graphics and display
the channels, games, widget, shopping etc., on the screen. These UI features are handled through
remote controller.

Responsibilities:

Worked on SetTopBox software, which contains VZSDK, a core layer and implemented it using
C/C++, Linux, LuaVM, Lua Framework, Embedded, LuaAPI, Lua scripts, Metrowerks,
Clearcase, kernel, multi tasks, TCP/IP, Message Queues, Audio, Video, HDMI, Postgress,
Posix threading, Key handlers, wrappers, callback functions and comprehended the low
level interfaces.

Worked for the 'Picture in Picture' feature by adding the widgets on the UI Screen, based On-Key
support. Understood the existing UI, VZDS high-speed Interconnect, high availability, distributed
systems, Low-level interfaces which were involved in the execution. Implemented the code and
interfaces to add the feature using C/C++, socket-api, IPC, VZSDK, Windows, Cygwin, Lua and
low level programming.

Tested the existing features and the new features.

Environment: C, C++, LINUX, LuaVM, Lua Framework, Embedded, LuaAPI, Lua scripts, Metrowerks,
Clearcase, kernel, VZSDK, Windows, Cygwin

Veda Solutions, India Mar09 - Jan10 Software Engineer


Project: Linux Open Source kernel 2.4/2.6
Worked on RT91ARM9200 Board which supports J-Link Interface, Ethernet, USB Device & Host, RS232,
2xSD-Card Sockets Connected via SD-Host Controller & SPI, JTAG Interface, Memory-64MB SDRAM,
32MB NOR Flash, 256MB NAND Flash.

Application level: Worked for Client/Server application for cloud, implemented interfaces to sync these
files like photos, contacts and documents with the server based on the account so that Users can access
these files online, can share with friends and send them through MMS.

Responsibilities:

Worked on C++ and OOD/OOA design and development, STL, multi- threading, IPC
mechanisms, Sockets, named pipes, Shared Memory, Semaphores, SNMP and Data Structures.

Worked on server side programming for implementing server sockets and interfaces for cloud
data from client requests which are from the device. These requests come from various devices
over the internet.

Worked on Oracle for accounting and storing and retrieving the cloud data from the server.

Using the stored procedures and triggers for data definition and modifications in Oracle,
Developed Shell scripts during testing phase.

Implemented code for packet analysis and tracing.

Worked on Unit/Regression testing

Worked on Control version systems.

Worked on filesystem, process management, I/O subsystem, performance analysis, filesystems,


device drivers, and memory management, flash SSD and code optimization in a multi-core
system.

Implemented Char Driver, Block Driver, NIC cards driver, Serial Driver, participated in WiFi, SCSI,
iSCSI driver stack and Implementation, Board Support Package (BSP), patches, GNU toolchain,
ported Linux Image on to a particular platform, perform debugging and testing.

Char Driver:

Skeleton Driver: Taking 4096 bytes instead of original device, implemented file operation
Structure and registration FOPS in the init function, which means init function will provide fops in
VFS, tested the communication between application layer and kernel layer in the read/write calls.

Based on the Vector size which is 32 bit of 12 bit represents Major number and remaining 20 bit
representing device ID for device in Kernel 2.6, made the changes in the code by modifying driver
with c_dev and registration with VFS.

Based on the changes in kernel 2.4 which provides kernel file in logical file system(dev fs)
automated, node management has been changed in kernel 2.6 as udev which will take care of
/dev management, updated the code accordingly and added code for the real device, using
registers performed the read write operations along with IOCTL operations.

Block Driver:

Implemented block driver stack for hard disk and implemented the code for registration of the
driver in Block layer read/write and unregistered code.

Implemented and modified block driver and performed in the code to Driver module initialization
function to set up for block operations and to make its disk available to the system. Set up internal
data structure for disk and created memory allocation for storing its data, used spinlock for mutual
exclusion in the kernel representation of our device.

Registered the driver in the kernel with block layer.

Initialized the gendisk structure, and assigned device operation structure to fops structure of
gendisk in the block layer and accessed call operations from the application.

Implemented open, close, release methods.

Implemented request queue for process requests.

Implemented the request method for requesting data.

Implemented the locking mechanism for the queue to serialize the access to internal resources
for controlling access to request queue and pointer to the queue must be stored in the gendisk
structure.

Implemented Ioctl method to handle commands, defined commands and Tagged command
queueing (TCQ) allows a block device to have multiple outstanding I/O requests, each identified
by an integer tag. TCQ can yield performance benefits.

PCI Driver:

Worked on net device driver stack. This Driver runs on the processor and when packets are send
out through this driver, when packets are written into Cache, it will give the instruction to the
processor, the processor should be synchronized and will put the packets to send from CPU
Cache to Buffer by DMA Mapping. When write occurs, the transmission will happen properly by
using DMA operations. When the packets are coming from hardware, those will get copied into
cache through DMA. When packets arrive, the hardware raises an interrupt to announce that new
data has arrived. The interrupt handler allocates a buffer and tells the hardware where to transfer
its data. The peripheral device writes the data to the buffer and raises another interrupt when it's
done. The handler dispatches the new data, wakes any relevant process, and takes care of
housekeeping and notifies. Bottom halfs will process the packet and send to application, so that
processing time can utilize and avoid packet loss.

Worked on DMA mapping which is a combination of allocating a DMA buffer and generating an
address for that buffer that is accessible by the device by setting mapping registers in the bus
hardware and are equivalent of virtual memory for peripherals. Also set up a bounce buffer, when
a driver attempts to perform DMA on an address that is not reachable by the peripheral device

i.e., a high-memory address, then Data is copied to and from the bounce buffer. Performed
Stream mapping for DMA mapping which provided mappings to work with a buffer that has
already been allocated by the driver as expected, and have to deal with addresses that do not
choose.

Registered the driver with PCI BIOS and Registered the driver with linux kernel net-device
subsystem under this verification code for device I/O Space which enable the Bus master for
DMA support, also mapped I/O space to linear address space, and allocated net device.
Registered driver function to net device object.

Written Open call and invoked when net device enabled through RC Script, Registered ISR
routine, allocated transmit and receipt DMA buffer and copy packets from device memory to
buffer, processed packet physical header, enabled net device queue for packet buffering.

USB Driver:

Worked on USB Char, USB Block, USB Net Drivers stack and architecture for supporting these
drivers.

Worked on the code for driver registration, UN-registration with the kernel, Implemented file
operations, IOCTL operation of each driver and ported onto system and tested.

Worked on WiFi driver and understood the internals.

Worked on SCSI, iSCSI driver stack and their Implementation.

Tested the following features in the iSCSI:

Tested the main task which was to send a correct sequence of iSCSI PDUs to the DUT, and to
verify that the DUT can respond with correct PDUs/PDU fields for wrong things and see the DUT
can detect and behave accordingly. Modified the PDU sequence to send the DUT to some extent
for changing CmdSN of a command, set an invalid data digest, and verified that the DUT can
react according to the protocol for sending a Reject PDU and closed the connection respectively.

Performed iSCSI functional test, PDU format error, PDU session/stage error, Header/Data digest,
Sequence error: CmdSN/StatSN/DataSN/R2T each had different scope and different rules.

Conducted Negotiation error, Data length error, Lost PDU.

This small Test tool had the following features:

Executable test scripts, An iSCSI Engine core, PDU format validation, Ability to modify PDU's
content, Ability to drop PDU, Ability to maintain multiple sessions/connections, Result and log, A
Batch system.

A batch system needed to manage test suites and test cases so that large number of test scripts
can run automatically without user intervention.

Tested following features in the Firmware:

Conducted Unit test on the PC; extracted a function from the firmware, compiled and tested it on
a faster platform. This exhaustively tested a function whereas this was prohibitively time
consuming in situ.

Instrumented the firmware interrupt handlers using a free running hardware timer: ticks at entry
and exit, and count of interrupts. Kept track of min and max frequency and period for each
interrupt handler. This data used to do Rate Monotonic Analysis or Deadline Monotonic Analysis.

All these drivers were tested using test files written in 'C' and scripts were based on the coding
standards.

Successfully Built the boot loader, kernel Image, File System and ported onto ARM board and
tested.

Trainee Programmer:

Covered: GNU C & Linux - Proprietary Vs Open Source, Free Vs Open Model, Programming
Standards ANSI, POSIX, Preprocessor, assembler, Linkers And Loaders - Static Libraries,
Dynamic Libraries, Linking using Third Party libraries, assembly language, Inline Assembly Assembly Equivalent C-Source, Implementing Inline Assembly, Build Tools - Make tool,
Autoconfig, Automake, Dynamic Memory - Dynamic Memory, Design of Application using
dynamic memory, Memory Overrun, Memory Underrun Process, Debugging Techniques Gdb,
Electric Fence, Valgrind, gprof, gcov.

Linux Programming: System Call System Call Defined, System Call Vs API, Implementation of
a new System Call, Process Management Process Creation, Process state scheduling, Process
Descriptor structure in kernel, Architecture of kernel process scheduler, Virtual Memory
Subsystem Responsibilities of memory, Management Module, Memory Allocation and Deallocation System call, Process Organization in Memory, Address Translation, Inter Process
Communication & Signals Signals, Kernel IPC Mechanism, Pipes, Message Queues, Shared
Memory, Semaphore.

Linux Networking Programming: Connection Oriented Application Development The TCP/IP


Socket model including Headers and conjunction avoidance algorithms, Establish a connection,
performing data Transfer, Client/Server Programming, Connectionless Application Development
UDP Programming, data transfer, Broad cast and multicast, Concurrency - Process and threads,

Posix
threads,
Concurrent
Server,
Client/Server
Application
Architecture

Connectionless/Connection-oriented I/O models, Multithreaded Vs Multi-Process, Application


designs, Multithreaded Vs Multi-process, Application designs, User Datagram protocol (UDP)UDP Header, UDP message, UDP applications, TCP : Transmission Control Protocol TCP
Service, TCP header, TCP Connection Management, TCP data flow, TCP performance features,
SNMP, MIB , Internet Protocol(IP) IP Header, IP Routing, ARP, ICMP, IPV6, Firewalls, IPS,
Packet Analyzer, Intrusion detection, multi vendor, Advanced Linux Networking Sysctl,
Advanced Socket Internals, Socket Data Structures, Registering protocol family, Multiplexing,
demultiplexing operations, Network Stack initialization, Sockfs, Socket Buffer, Packet Family,
Netlink and RTNetlink, Packet Filtering, Net-Filtering Extensions, Kernel structures and physical
layer.

Kernel Programming and Device Drivers: - Linux module Programming, Accessing kernel data
structures,

Kernel Data Types, Kernel Hotplugs, Sysfs, Device model, Device Tree, Reserving I/O Ports,
Kernel Synchronization, Kernel interrupt Handling, Kernel Time Keeping, Accessing the
Performance Counters, Kernel Memory Page Allocator, Slab Allocator, Fragment Allocator,
Cache Allocator and implementation, File System, Deferred Operations, Kernel File Formats,
Dynamic Kernel Probes, The VFS Interface introduction, Need for a VFS layer, In-core and ondisk data structures, The Big Picture, Experiments Registering a file system, Associating inode
operations with a directory inode, The lookup function, Creating a file, Implementing a read and
Write, Modifying read and write, a better read and write, creating a directory, A look at how the
dcache entries are chained together, Implementing deletion, Character Devices Driver/Reentrancy, Lseek/ioctl/fasync, Blocking I/O, Asynchronous I/O, Hotplug, Kernel timers, Memory
Mapping, mmap, Accessing Device I/O, Interrupt Handling, Block Device Linux Block Device
Architecture, Lseek/ioctl/fasync, Bio Structure, Block I/O Scheduler, Example Block Driver,
Network Device Configuring an Interface, Driver writing basics, Registering a new driver, The
sk_buff structure, Towards a meaningful driver, Statistical Information, Bus Access PCI, USB,
Serial.

Device tree, FOPS, Cdev, Device Tree, Hot Plugs, Udev, set up cross platform GNU C/C++
compiler.

Environment : C, C++, Linux Kernel 2.4/2.6, Shell Scripting, TCP/IP, OSG, Postgress Sql, SNMP, Socket
Programming, RPMS, BUILD, File System, Memory management, Device Drivers, RTOS.

Vanguard, PA Sep'08 - Mar'09 Senior Software Engineer


Project: CWR Imaging Project
Worked on the Vanguard Transaction conversion project. Reviewed the existing code and made the
required changes. Designed, developed the code for enhanced features and tested the Code as per the
new requirements. .
Responsibilities:

Understood the legacy code, worked on the existing system and the code was implemented
using C, C++, RPC, TCP/IP, UDP, IPC, Unix, Files, Client/Server Application, procedures, Shell
Scripting and Debugger.

Worked on the design, development and tested the code successfully for new requirement.
Understood the involvement of existing Remote Procedure calls, implemented using TCP/IP,
UDP, Client/Server and Replaced with FILES by reading the data and check structures
information from Files.

Made the changes according to the requirements on related processes. Understood the huge
system related to check processing, involved in many processes for data verification such as
check Image processing, Field validations, Bit validations etc.

Partially involved in Production Support on Java, JBOSS, RAD 7.0, EJB, JSP, Clear Case and
worked on to test the defects, learnt different levels of testing, development, production clients
and Databases. Fixed the problem in the code based on the tickets.

Environment: C/C++, JAVA, SunOS [UNIX], TCP/IP, UDP, IPC, Client/Server Applications, RPC, Socket
API, Shell Scripting, OOPS/OOAD, GCC, Data Bases, Files, DBX, Oracle, Shell Scripting, make file

Thales Avionics, CA Mar'08 - Aug'08 Senior Software Engineer


Project: DSU-D2 to DSU-D3 MIGRATION
Successfully accomplished the reviewing of the existing project, understanding of the issues and core
Concepts of the new requirement. Participated in the development process of the new design,
development, testing, and documentation of the migration process of the existing code into new
Hardware.
Responsibilities:

Worked on the existing system and understood the legacy code in Kernel level in C and
application level code in C++, JAVA, and configuration scripts and makefiles.

Compiled and ported the code according to the new Intel processor 7848 with Kernel
2.6.11 and made changes according to the new compiler.

Worked on BP-Sys toolchain, Used Kickstart configurations. Worked on Network Switch


configuration using .dat files.

Worked on Client Server application which involved Linux Internals Multithreading,


semaphores, OS Internals, IPC, TCP Sockets, UDP Sockets and File Systems in Linux also
modify patch, and rebuild, the Linux kernel.

Involved in L2, L3 Protocols like IP, ARP, RARP (Proprietary) SNMP traps protocols.
Worked on the changes required in the application design and development of applications,
which are heartbeats, downloads, watchdogs, streamers.

Worked on Linux Internals like Multi Threading, IPC, Socket Programming.

Worked on Linux and modify, patch, rebuild the Linux kernel for board also worked on
Configuration changes. Application Uses LDAP and MySQL for storing the data. Understood the
streamers and made the required changes.

Involved in all kinds of tests such as unit, side-by-side testing, integration,


performance testing of the applications. Further, written the test codes and scripts as per the
requirement.

Environment: C/C++, JAVA, Enterprise Linux 5, Kernel 2.6.11, TCP/IP, UDP, [RTP/RTCP], Socket API, IP
Protocol, IGMP, Shell Scripting, JNI, OOPS/OOAD, Apache, SNMP, Web Server, GCC, GNU, LDAP,
Clear Case (Subversion), DOORS, makefile, VLAN, MySQL, SQL, Switch, Gdb.

Verizon Business, CO Oct'07 - Mar'08 C, C++, Java-Developer


Project: E-Payment-Electronic Payment Application
Successfully accomplished the design review, development, testing, documentation, quality and
performance of E-payment code for up-gradations and migrations in the Verizon Business of E-payment
Settlement.
Responsibilities:

Worked on understanding the legacy code and implemented using C, C++, Pro*C, UNIX
by debugging, databases joining and made up-gradations based on the requirement.

Written the code and understood the design of the existing code and migrated the total
code into Java.

Led the project by myself. Understood the design in the Java and OOPS for the
migration purpose and migrated the code into Java from Pro*c, UNIX and Pl/SQL converted the
into Java code using OOPS concepts, Java 5, Vectors, Hash Map, STL, database Connections.

Done validating the fields coming from databases and hot coded some of the fields as
per the logic, conducted the unit, performance and compare tests.

Involved in debugging the code. Found the problems and fixed it.

Prepared the Unit test plan, Sub System and Integration test plan.

Environment: C, C++, Pro*C, Java, UNIX, IPC, Oracle 11i, PL/SQL, Windows XP, JDBC, TCP/IP, GNU
tools ,OOPS/OOAD, Eclipse Developer, SunJDK1.5, Gdb, Apache (Commons Pool, DBCP, Collection),
FTTP, makefile.

Verizon Business, IA Apr07 - Oct07 C,C++Developer


Project: JAGD Gateway- Just Another Gigantic Database Gateway
Successfully accomplished the design review, development, testing, documentation, quality and
performance of Gateway software for Communication Services Engineering in Verizon Business.
Responsibilities:

Worked on the design documents for Server Programming for Gateway development
team. Developed and tested the server side programming for distributed systems to handle the
Asynchronous requests over the network from ACP, POSA client applications using in the
Gateway of JAGDGW.

Handled the expected responses from the server, which are retrieved from the database
services using connection pool, DB Services.

Handled the requests for Server side development in C, C++, AIX, and converted into
Java, Linux, Windows XP based data using JNI and vice versa.

Worked on NIDS init process, logging, JNI, records, receive, send, server
property/config, collection, monitoring, serialized, timer, process/threads classes.

Worked on internals, semaphores, task switching, NIS, IPC, TCP/IP, pre-emptive


scheduling, and memory management in Linux using C and Java, Java Data Objects, Camel,
Apache. Development of data layer components using DBCP on server side, access the PL/SQL
stored procedures.

Using the stored procedures and triggers for data definition and modifications in
Oracle9i, Developed Shell scripts during testing phase.

Modified the Linux configuration environment, patch, and rebuild the Linux kernel to
get work on the server.

Worked on Test Tools using for testing for encoding and decoding data with ASN.1and
MIDS and handled SNMP Error messages.

Prepared the Unit test plan, Sub System and Integration test plan for ACP, POSA
module.

Handled the Logic and Memory testing of the code. Tested the code using performance
testing and side-by-side testing using Test tool.

Developed Unix Shell scripts for testing automation.

Environment: C, C++, Java, Oracle 9i, AIX, Linux, Windows XP, JDO, DBCP, Socket-API, TCP/IP, JNI,
Multithreading, OOAD, Rational Developer, Rational Clear Case, Ant, Gdb, OSS ASN.1, SQL, JBOSS,
Log4j, SunJDK1.5, GNU tools, JDO, SNMP, JPOX, NIS,SNMP, Ajax, Camel, Apache (Commons Pool,
DBCP, Collection), make file.

Worked on Contract Projects Oct'06 - Mar'07 C/C++Developer


Project: Convergence Application
Successfully accomplished the design review, development, testing, documentation, quality and
performance of billing software for Sprint-Nextel convergence
Environment: C, C++, Java, Oracle 9i, GNU tools, HP OS, SS7, MQ Series, SQL, Make File, SQL,
PL/SQL, Oracle 9.2, UNIX, Linux, Socket-API, Multithreading, Makefile.

Quick Eagle Networks, India, Feb05 - Jul05 C/C++ Developer


Project: Implementation of VRRP Module
Quick Eagle Networks is a US based company having Indian development center in Hyderabad, India.
They have many products in Networks and Telecom Domain and have large number of clients. One of the
Latest products is 4200/4300 IP Access Router which added more features based on the feedback from
product management and the resources availability. Worked on L2/ L3 layer protocols and it supports
various features like Congestion Control, Radius Authentication, Frame relay static routing, IP forwarding,
IP QoS, Firewall, Cisco HDLC, MAC Bridging, VLAN, NAT, NAPT, Dynamic Routing with OSPF, Dynamic
Routing with BGP, Drop and Insert Capable, DHCP Relay Agent, VRRP.
The purpose of this enhancement with VRRP is to eliminate the single point of failure, when the original
router connecting to the networks from outside world goes down, the virtual Router Redundancy protocol
(VRRP), introduces a virtual router, composed of two or more routers on the same subnet. This virtual
router has an IP address associated with it. VRRP enables you to configure multiple routers as the default
gateway router, which reduces the possibility of a single point of failure in a network. Instead of leaving
the back-up router idle, the backup router can be used as a default router for some of the hosts, there by
sharing the traffic load more equitably among the available router.
Responsibilities:

Worked on varies modules in the process of upgrading the functionalities in 4200/43000 IP


Access Router in according to functional Specification, debugging and bug fixing.

Design and developed VRRP module, and configure the Network according to test the router
after enhancing router, QOS, test and debugging the with shell and Perl scripts and bug fixing the
module in that router. Hardware Flash memory & RAM10/100 Ethernet port and common frame
for T1 and E1 Lines.

Involved on make files updates and configuration scripts and test scripts using shell and perl.

For the data store purposes, MySql and stored procedures were used.

Environment: C/C++, Sun Solaris, Linux, makefile, Perl, GNU tools, TCL, SNMP, OLAP, MySql, GTK

Paradigm Infotech, India Sep04 - Dec04 C/C++ Developer


Project: Implementation of S2 Router
Implemented and enhanced the features as per the Client requirement of the existing product of S2
Router. This is the Router Implemented in the Application layer called S2. This System sits behind the Firewall
and provides secure access to a protected network through a single access point and allows only authenticated
traffic to pass through it. There are a number of technical elements which are intertwined within the S2 system in
order to allow it to perform its duties and it acts as the revolving door between a protected network such as a
data center, and an unprotected network such as the internet. These technical elements perform duties such as
packet capturing, packet manipulation, packet forwarding, authentication forwarding, audit forwarding, maintain
the load balancing and many more. The purpose of all of this is to add a level of authentication at the network
level which is unprecedented. This Router is implemented in the Application layer.
Responsibilities:

Worked on to enhance the performance and speed of the Router.

Developed and tested kernel programming for Existing Router.

Implemented the Client Application for existing S2 System. This Client Application when installed
on the user machines, it will act as the interface between the S2 and the user. All interactions
between S2 Server and user machines will be through the S2 Client. S2 client will perform the
login & authentication, so the role of the web browser based login will be overtaken by the clientbased
login.
Developing
Network
Processor
Microcode
in
a
fast
packet forwarding engine.

Worked on semaphores, task switching, IPC, scheduling algorithm and memory management,
data stores. Further, worked on Bridge Client is used to establish communication between a
server lying outside S2 with a protected resource server inside S2. Worked on Firewalls, Packet
Analyzer, Intrusion detection, SNMP traps.

Worked on makefiles and scripting using PERL.

Some users currently use VPN clients to log on to domain and access the resources through
VPN Clients itself. S2 Client takes care of the integration issues with VPN.

Environment: C/C++, Open BSD, Tcl, perl, QOS, makefile, LDAP, SNMP, GNU tools, SQL, MySql.

Council for Industrial & Scientific Research (CISR), India Jun04 - Aug04 C/C++ Developer
Project: Implementation in VoIP System
Implemented a module in Linux kernel level for compressing the data using Read Solomon Algorithm for VoIP
System. In VoIP system, the voice is generated in the form of analog signals. These analog signals are
converted into digital signals using DSP system. This DSP system generates a huge amount of digital

data. To send this data to destination directly through networks takes a lot of time and more bandwidth.
This module takes the huge data as the form of input that is generated by DSP System. This input data is
divided into small parts and for each part calculated the polynomial equation using the Read Solomon
Algorithm and put into the buffer. This Module gives these buffers in the form of output. This output is
giving to Encryption module and that module encrypts this data and forwards it further requirement. For
the accounting purpose MySql was used to store the info. This module also handles the incoming buffers
and decompresses it using read Solomon Algorithm and giving the digital data in the form of output that
will handle by DSP system. This module also takes the responsibility for error checking and data loss in
the buffers and informs the manager for recollecting the lost data, update the makefile according to that.
Responsibilities:

Involved in the development and deployment of a Module for VoIP.

Tested the module while implementing it.

Environment: C, C++, Redhat Linux, Makefile, MySQL, QT

Council for Industrial &Scientific Research (CISR), India Dec03 - May04


Project: Implementation of Device Driver for Serial Communication using RS-232.
This module implemented for communication between devices. It is based on Aschynchronous
communication and notifies the application whenever data comes on device. This module follows the RS232 communication standard and uses the Linux OS internals and kernel programming. For using this
module we can send and receive data and the Acknowledgment between devices. In this module, each
part consists of data and reference to the next part buffer address. This implemented using linked list and
chaining between Buffers for i.e., maintaining data into buffers based on the size of data. It also maintains
the Queue for each requesting device and requests to wait for service based on priority.
Later the code was converted into VxWorks.
Responsibilities:

Involved in the development and deployment of a Module for Serial Communication.

Environment: C, Tcl, Embedded Linux and VxWorks.


Panini logix Pvt Limited, India Jan03 - Nov03 Software-Engineer
Project: Mail Proxy for a Firewall
The process includes development and configuration of three main components using C++.
Mail Receiver: When a remote system connects to the SMTP port, the operating system invokes this
module, which is a daemon process,
Mail Processor: This module is responsible for scanning the receiver's spool directory periodically and
submitting the queued messages to send mail for final delivery. Here, sendmail is used to transfer the
message when smapd delivers a message; it clears the file from the spool area.

Sendmail: Once smapd submits the queued messages to send mail for final delivery, Sendmail is an MTA
which transfers the mails to the destination applying the filters to the received mail.
Responsibilities:

Involved in development and deployment of a Mail Proxy for a firewall

Environment: C, C++, makefile, Perl, Redhat Linux.

Panini logix Pvt Limited, India Mar02 - Dec02 Software Engineer


Project: Embedded tiny TCP/IP stack for Proprietary RTOS.
Environment: C, C++, Proprietary RTOS, SNMP, makefile, used Embedded Linux for development.

Panini Logix Pvt Limited., India Jun01 - Feb02 Software Engineer


Project: Online Shopping
This is an e-commerce application, which helps the customers to sell their products online. A particular customer
can access his information with proper authentication/authorization only (encrypted id/passwords). It enables
the customer to update the product information online, search for a particular product by full/partial product
name, product category and ID. A User can customize various options, which are done using client side
cookies. This also provides the customer with up-to-date reports on the sales information based on customer
age-groups/gender and product name/category.
Environment: Windows2000, JDK 1.2, Java Swing, JSPs, Servlets, JDBC, JavaScript, SQL, Oracle 7.3

Panini Logix Pvt Limited, India Oct00 - May01 Trainee-Programmer


Project: Expense Calculator
Panini Logix Pvt Limited has a manual System for calculating Expenses incurred by an employee during
the tour and it is not Conducive for Efficient operations. It is prone to errors and mishandling, hence the
organizatio