Senior Software Engineer Resume
San Jose, CA
SUMMARY:
- 16+ years of experience in analysis, design, coding, debugging, integration, testing and maintenance of systems and applications software, including client - server systems, network protocols, drivers and user interface applications.
- Sound knowledge of data structures, multi-threading, IPC, STL.
- Hands-on experience in installation and configuration of hardware and software for testing; test case design, development of test tools and automated test scripts; test execution and reporting.
- Interacted with customers for requirement analysis, project meetings and acceptance testing. Worked on troubleshooting complex problems and providing optimal solutions.
- Experience working with Waterfall and Agile/Scrum methodologies.
- Strong analytical skills, dedicated team player, fast learner and self motivated.
TECHNICAL SKILLS:
Programming: C, C++, Perl, UNIX shell scripts, Java, Visual Basic, Tcl/Tk, Expect, SQL, C#, XML
Operating Systems: Linux, Windows, VxWorks, Solaris
Development/Debug: Visual Studio, WorkBench, Eclipse, gcc, gdb, MFC, DDK, NDIS, WDF, WDK, WinDbg, SoftICE
Analyzers: WireShark, SmartBits, DekTec, Sencore, Tektronix MTS4000, HarrisScope, TS Reader, JTAG
Source control: CVS, Visual SourceSafe, Rational ClearCase
Protocols/Standards: TCP/IP, RIP, OSPF, IGMP, SNMP, SAN, IPTV, Confidential - 2, H.264, ATSC, DVB, Ethernet, ASI
WORK EXPERIENCE:
Confidential, San Jose, CA
Senior Software Engineer
Environment: VxWorks, Embedded Linux, Windows, C, C++, WindRiver WorkBench, Tornado, TI-CodeComposer, gcc, gdb, Visual Studio, TCP/IP, ASI, Confidential -2, H.264, ATSC, DVB, SD/HD encoding and transcoding.
Responsibilities:
- Involved in design, development and testing of object-oriented client-server modules for Confidential -2 and H.264 Encoder and Transcoder systems processing SD and HD video for IPTV domain.
- Implemented modules for control layer, SNMP, Confidential, blade redundancy, device/port configuration, mux/demux, packetization, rate control, audio-video timing synchronization, VBI/Teletext, SPTS/MPTS CBR, PSI parsing, packet queue handling to and from video/audio/PiP processor, messaging, processing routing table, maintaining packet statistics, multicasting, licensing, firmware upgrade and integration with third-party libraries.
- Developed analysis tools to verify stability, conformance and proper functioning of encoders and transcoders.
- Interfaced with customers for product deployment at headends and work on escalated issues. Performed troubleshooting of complex problems, replicated customer issues in lab, analyzed system output at transport, PES and elementary video/audio layers and provided bug fixes and solutions in a timely manner.
- Provided training and guidance to QA and Customer Support teams in understanding new technology and features of the products. Assisted in verification of quality of products and conformance to design/standards.
- Worked with Hardware, QA, Manufacturing and Customer Support for product design, test and deployment.
- Actively contributed in Agile Scrum and XP processes on design, development, testing and resolving customer issues.
Confidential
Senior Software EngineerEnvironment: Satellite receivers, IRDs, VoD servers, Middleware, Cisco routers/switches, Mux, DAs, STBs, Confidential -2 and H.264 SD/HD encoders, transcoders, decoders, encryption/decryption systems, packet and stream analyzers, Linux, Windows, C, C++, bash shell scripts, Perl, SQL, ATSC, DVB, Tektronix MTS4000, TS-Reader, Sencore, DekTec, in-house test tools, JTAG, HarrisScope, Elecard, VLC, Wireshark, MIB browsers, SmartBits, Bugzilla, Mercury QC, UML, Visio, MS-Project, PowerPoint.
Responsibilities:
- Analyze testing objectives and identify necessary hardware, software and tools. Setup test-beds.
- Collaborate with teams to design test cases.
- Configure test-bed hardware and software components for input and output for various tests.
- Perform detailed testing: white-box, black-box, regression, functional, stress, interoperability and compliance.
- Develop automation test scripts to configure devices; control input/output bit-rates, video/audio types, system and elementary level parameters and capture output at different stages.
- Analyze captures at various layers (IP, Transport, System, PES, Video/Audio elements, descriptors etc) to verify for conformance with standards and accepted levels. Log bugs and inconsistencies.
- Test encoder, transrater, transcoder output in various configuration: ATSC, DVB, Confidential -2, H.264, SD, HD, bit-rate, interlaced/progressive; Test for interoperability with various Receivers(Motorola, TandbergTV) and STBs(ADB, Microsoft A-server, Amino). EMR/EVR/SMR/iPlex testing in San Jose, CA and EN8190 testing in Southampton, UK.
- Record, analyze and publish results. Prepare PowerPoint presentations for tracking bugs and fixes.
- Discuss results and advice changes for future revisions.
- Actively contributed in Agile Scrum and XP processes on test case design, automation scripts and testing.
Confidential
Senior Software EngineerEnvironment: Windows, Linux, C/C++, Visual Studio, MFC, Visual Basic, MySQL, UNIX shell scripts, Perl, Tcl, Expect, net-snmp, socket programming, SmartBits, Wireshark, IP, TCP, UDP, IGMP, DHCP, BOOTP, ICMP, SNMP, SD/HD Confidential -2, H.264, ASI
Responsibilities:
- Involved in design, development and verification of automation test software. The suite of software applications perform diagnostics on hardware to detect for various failure conditions, perform automatic configuration of the devices and execute functional tests under various stress conditions to carry out complete verification of the devices. The software applications provide user friendly GUI and also maintain a range of process control and test results in database that further help in troubleshooting and fixing any failed devices.
- Managed production teams at two manufacturing sites for various SkyStream products like MediaPlex, iPlex, EMR, SMR and their daughter cards: Confidential -2/ Confidential -4 encoders, transcoders, transraters, ASI-Rx/Tx and conditional access cards. iPlex Production Test (suite of Unix shell scripts with HTML front-end to perform functional and environmental stress tests for SCM, MCM, encoding, transcoding, mux and demux operations)
- SkyDecryptTest (multi-threaded C++ application to verify decryption feature in real-time)
- SkyMPEG4Test (diagnostic software to check encoder board functions under stress)
- SkyUpgrade - EMR remote upgrade software (multithreaded client-server sockets application in C++)
- Memory stress tests for SMR
- SkyTranscoderTest (diagnostic software to check transcoding functions under varying load/input)
Confidential
Senior Software EngineerEnvironment: Linux, C, C++, gcc, gdb, sockets, IP, TCP, UDP, ICMP, IGMP, SNMP/MIB
Responsibilities:
- Involved in development and testing of software components for packet header parsing, filtering, forwarding, multicast to unicast conversion, conditional access interface, PID remapping, IGMP processing etc.
- Added corresponding GUI and control code to EManager, the Element Management System for EMRs.
- Worked on code optimization to reduce latency and improve system performance.
Confidential
Senior Software EngineerEnvironment: Windows, C++, Visual Studio, NDIS, WDM, MFC, sockets, multi-threading, ASI, TCP/IP, Confidential -2, CAS.
Responsibilities:
- Involved in design, development and testing of kernel mode driver, client-server modules and graphical user interface to facilitate device configuration for routing, scrambling, encryption and status monitor components.
- Worked on preparing the product installer with InstallShield.
Confidential, Sunnyvale, CA
Senior Software Engineer
Responsibilities:
- Designed and developed a production test tool for EMR (1600/5000/5500 ) series of media receivers.
- Visual Basic application for input/output screens, Bar code label generation and printing, label scanning and verification, MS Access ODBC database to maintain production test results of devices.
- C++ DLL module to:
- Handle simultaneous communication with 8 devices via serial ports
- Run automated tests for device boot, memory, detection of Tuner, Modem and Conditional Access cards.
- Perform Tuner functional tests at various symbol rates, frequencies and FEC rates.
- Tcl/Expect script module: to load customer specific configuration on devices.
- Involved in design, development and testing of EVR’s configuration and test tool for manufacturing department.
- Developed Visual Basic GUI and Tcl/Expect automation scripts to load image on devices then configure and test multiple devices simultaneously in production environment.
- Successful units were then configured with customer specific device settings, date/time/time zone, serial number, licenses, zBand GUID number and automatic bar code labels printed to assist shipping.
- Verification of Sun-MC, an NMS for Sun Microsystems’ E-3500, E-6800, E-10K, E-12K and E-15K high-end servers.
- Involved in system study, setup and configuration of Sun server domain platform with multiple CPU and I/O boards.
- Performed Functional, Regression, Component and System Testing of server features for configuration, redundancy, backup/restore, statistics and alarms. Performed root cause analysis and reporting.
- Developed and tested a source filter-driver and GUI for SkyStream Confidential player, to play live streaming video or stored files, using C++, MFC, multi-threading and DirectX.
- Performed design optimization and implementation to synchronize audio/video with the feed, optimal buffering technique to eliminate data loss and latency. Implemented messaging between driver and Confidential player.
- Designed and developed a multi-threaded, Visual C++ based object-oriented application, which is used for debugging embedded software modules on Broadcom BCM and Motorola C5 processors simultaneously.
- The tool provides features to send debug instructions to the processors, add breakpoints, watch processor registers, read/write memory addresses and watch stack status.
- Developed the configuration server and Confidential interface in C++ for Propulsion’s network packet processors, to configure bandwidth management parameters.
- Work involved validation and implementation of Confidential interface commands for network traffic engineering: defining classifiers, policies, actions, service policies for Quality of Service(QoS) and MPLS modules.
- Designed the Relational Database module to manage and maintain SkyStream EMRs in field deployments, to efficiently handle configuration, accounting, customer information, grouping and scheduling tasks.
- Developed SQL functions to handle the relational tables and ODBC, C/C++ interface for integration of the database with the Element Management Software (E-Manager).
- Developed element management software for a terabit SAN switch using JAVA Swing. The software monitors various interface and protocol metrics related to Fibre Channel, GigE, iSCSI, IB, IP and performs proactive fault detection and avoidance. Implemented code to monitor system functioning, performance, faults and display results in graphical and tabular formats.
- Developed SNMP MIB parser/compiler and MIB Browser application. Integrated SSH and telnet Confidential clients. Setup web server Apache and mod-SSL. Created ANT build scripts. Integrated NMS with HP-OpenView.
- Involved in object-oriented design and development of print server, network port monitor, configuration, process components and an NMS GUI for a multi-functional device (print, I-Fax, scan and photocopy).
- Project involved work on TCP/IP, SNMP, X409/ASN.1, LPR, FTP, ICMP, C/C++, Visual C++/MFC, STL, Windows device drivers, SoftICE and InstallShield.
Confidential
Senior Software Engineer
Responsibilities:
- Performed analysis, design, development of test software(FIAT), test case design, manual and automated testing of Confidential routers.
- Worked on functional, performance and system testing; results analysis and reporting.
- Project involved work on IP, UDP, TCP, ICMP, IGMP, RIP, OSPF, IPSec, L2TP, STP, SNMP, DHCP/BOOTP, ARP/RARP, Novell-IPX/SPX, AppleTalk, XNS and DECNET protocols.
- My responsibilities included: System study, requirement analysis, project management, schedule/cost negotiations and designing functional specifications, at Confidential Networks Japan.
- Execute project work in India where my responsibilities included: Project Management activities, hiring, training and mentoring, team management, scheduling and assigning tasks, monitoring project progress and head weekly conference meetings with customer in Japan and discuss issues and progress.
- Worked on structural design, detailed design, coding, integration, unit and component-level testing, integration testing, debugging and bug fixing, preliminary Functional and System testing and project maintenance.
- Travel back to Japan to carry out Comprehensive Functional and System level testing, create installation kit and project documents, perform Customer Acceptance Testing, customer training at various QA and manufacturing divisions, project hand-over and billing activities.
- Project development included coding for a Windows kernel mode driver module using: C, NDIS, DDK; a control module DLL using: OOD/OOP, C/C++, socket programming, multi-threading, IPC, SDK, STL and a front-end GUI module using: Visual Basic or Visual C++ and MFC.
- Involved in architecting, development and testing of NMS for Confidential routers to monitor various protocol/interface level traffic for performance management, configuration and fault tolerance.
- The software verifies MIB implementation, RFC compliance, SNMP counters/tables and TRAP functionalities.
- Work included coding and testing the SNMP functions for public and private MIBs for TCP/IP, ICMP, RIP, OSPF, STP, IGMP, IPSec, RMON, IPX/SPX etc.
- Involved in architecting, development and testing of a UDP/IP packet generator, a tool used to test the throughput of routers and switches. The software constructs and sends test packets with fixed/variable size using different data patterns at high speeds to virtual networks across the router.
- Developed and optimized the miniport driver to get maximum performance for packet bursts. The generator module sends UDP packets with fixed/variable size using different data patterns at a very high rate in a multi-processor environment, while the receiver module analyzes, checks for any errors and plots comparison charts.
- Performed requirements analysis, design, development of a software for verification of XNS implementation in Confidential routers. The software tests the RIP, ECHO, PEX, SPP and ERROR packet routing, under various stress conditions.
- Developed and tested driver and DLL modules for packet construction/send, receive/analysis, generation of data patterns and GUI input/output screens to configure test conditions and display results in charts and graphs.
- Involved in analysis, design, development and testing of software to check compliance of Novell IPX protocol implementation in Confidential routers.
- Developed code to construct/send RIP, SAP and IPX protocol packets to the router, under various test/stress conditions and to analyze the responses and display results at for correct working of the IPX router.
- Involved in system study, design, coding and testing of a system software that helps in R&D, analysis of chemical experiments and process evaluations at Confidential .
- The software interacts with a device called Rheometer and controls its pressure/stress parameters, monitors the results, plots graphs and records the behavior of various chemical compounds under empirical conditions.
- Developed the software using: Visual C++, MFC, ODBC and Windows SDK.
Confidential
Software Engineer
Responsibilities:
- Involved in analysis, design, coding and testing of an application software for the textile industry.
- Implemented various features including DIB image edit, single/multi-layer weave filling, thread balance, warp tension analysis, weave library, create/print weave and graph views.
- Implemented driver interface module to send weave commands to Jacquard textile machines and check status.
- Developed the software using: OOD/OOP, Symantec C++, MFC, SDK and STL.
- Involved in analysis, design, implementation and testing of a graphics based application that aids textile designers. Implemented various features like bitmap loading and editing, drawing tools, color tools, enhanced tools, selective image copy/paste, motif library, bitmap stitching and printing.
- Developed the software using: OOD/OOP, Visual C++, MFC and STL.
- Designed and developed an application software that monitors performance of marketing, sales and customer-support staff of the company at various branch locations. Developed various GUI views like Employee performance charts, Quarterly revenue charts, Product-wise sales charts etc.
- The product was implemented with traditional 2-tier client/server architecture using Visual Basic for front-end GUI and Oracle 7.0 as backend for database.