Post a Job Sign in

Karunakar Kona

Senior Software Developer at SHPS

Louisville, KY


• Over thirteen years of professional experience in software development through out the software development life cycle in Java\J2EE, Swing, Struts, JSP, Servlets, HTML, CSS, XML, JavaScript, Log4j, ANT, Maven, Hibernate O-R Mapping, JUnit, C# .NET, ASP.NET, nUnit, C, C++, VC++, MFC, Pro*C, Cobol, JCL, T-SQL, PL/SQL, MySQL, Crystal Reports and in Unix shell scripting (Bourne and Korn), and in using ADO integrated with Visual C++ 
• Completed the PMP Contact course required for getting the PMP Certification and have a very good knowledge and understanding of the Project Management processes. 
• Extensive experience in OOA/OOD and in using OOP concepts for problem resolution and in figuring out enhancements for existing systems 
• Well experienced in analyzing the business requirements and in architecting and designing an IT solution for the same 
• Good understanding and knowledge of Design Patterns and their application in software design 
• Extensive experience in performance tuning of existing systems with performance bottle necks 
• Extensive experience in designing and coding web applications using MVC( Model View Controller) architecture 
• Experienced in working with various software development methodologies 
• Extensive experience with the Test Driven Development (TDD) paradigm of software development, with nUnit tests covering the entire functionality of applications using Rhino Mocks, a Mock Object Framework for .NET 
• Experienced in configuring and maintaining the Tomcat Web Server and in using JDBC Type IV drivers and JNDI interface methods to connect to a RDBMS, in a three tier client server architecture 
• Well experienced in creation of Java based UI screens using Versata Jade/ netBeans, IDEs (Integrated Development Environment) for Java and in implementing business logic behind the screens 
• Well experienced in the design and creation of C# .NET Windows Forms based UI screens using MS Visual Studio, and in programming the behind the screens processing logic 
• Used features like interfaces, inheritance, exception handling, containers, event handling, key and mouse listeners, and synchronous and asynchronous threads in writing custom code to meet the functionality requirements behind the screens 
• Extensive experience in designing and developing applications in C++ and VC++ 
• Well experienced in designing and developing applications using RogueWave tools with C++ 
• Experienced in using advanced ADO concepts and in fine tuning their integration with VC++ to improve the performance of the system 
• Extensive experience in analysis, design, coding, setting up test data and testing for enhancements and maintenance of existing systems, in a team based development environment 
• Very good knowledge of RDBMS concepts including physical database design besides strong database related development experience using PL/SQL (for Oracle data base), T-SQL (for MS SQL Server data base) and mySQL procedures, functions and triggers and their performance tuning using database access tools 
• Extensive experience in coding SQL Server SQL scripts, triggers, functions and stored procedures, including usage of dynamic SQL 
• Experience in creating and maintaining Relational Data Models using modeling tools like Erwin. 
• Very good knowledge and experience in setting up replication between SQL Servers running on different machines 
• Extensive experience in database management including backing up databases and restoring databases, setting up user logins and granting various roles to the users 
• Proficiency in writing optimized SQL queries using database access tools like DBArtisan and Rapid*SQL, besides using SQL Server Management Studio 
• Well experienced in modeling and design of database objects like Tables and Views as part of problem resolution and system enhancements 
• Experienced in designing and coding Crystal Reports to suit user and management requirements and in making enhancements 
• Excellent domain and business knowledge in Health Care domain covering 
o Plan and Election creation and administration as per business rules 
o loading of participant data, demographics and eligibility data 
o loading, processing and auto-adjudication of Healthcare, Dependent care and Commuter claims 
o reconciliation of payments made on claims 
• Extensive experience in the HealthCare, Energy and telecommunications domains 
Technical Environment 
• Software Languages Java/J2EE, J2SE, HTML, XML, T-SQL, PL/SQL, SQL, Cobol, JCL, Perl, MFC, C, C++, Pro*C, C# .Net, ASP.Net, ADO.NET 
• Operating Systems HP-UX(Unix), Windows, MVS/XA, Sun Solaris 
• Web Servers: Tomcat, WebSphere, JBoss, IIS 
• Databases: Oracle, MS SQL Server, MySQL, FireBird, MS Access, DB2 
• Development Tools FlameRobin, Squirrel, SQL Server Management Studio, SQL*Plus, DBArtisan, Rapid*SQL, Roguewave, MS Visual Studio, Vi editor, MS Office Tools 
• Build Tools: Maven, ANT 
• O-R Mapping: Hibernate 
• Application Logging Libraries: Log4j, Log4Net 
• Frameworks: Spring, Struts 
• Version Control: PVCS, SVN with Tortoise 
• IDE: Versata Jade 4.1, MS Visual Studio, netBeans, Eclipse, IntelliJ 
• Development Paradigm: TDD with nUnit tests 
• Mock Object Framework: Rhino Mocks

Work Experience

Senior Software Developer

Louisville, KY

October 2006 to Present

SHPS is a benefits administration company that handles the Spending Accounts for clients. The Spending Account Management (SAM) system was developed from scratch to handle the Client Employees' Healthcare spending Accounts and Flexible Spending Accounts, with associated spending account card processing. This system was developed using MS .NET technologies with Oracle database as backend. 
• Working as a Senior Software Developer supporting the Spending Account Management, Legacy and CORE application systems. 
• Designed and coded multiple User Interfaces that facilitate the CSR to look at and modify the data for processing claims like Plan set up, eligibility, submitted claims, adjudication results for claims, payments made etc. 
• Designed and coded multiple batch processes that load the Participant data, Eligibility data, Demographics and Deposit data from flat/ XML files to the SAM system. 
• Designed and coded the batch processes that load paper less claims to the SAM system as XML files and adjudicate the claims. 
• Designed and coded the batch process that loads the faxed claim data received from the OCR system as XML files, to the SAM system and adjudicate the same. 
• Designed and coded the Reconciliation process that reconciles the different kinds of payments made on claims to the CMS (Cash Management System) data, and to the Check File data sent to the banks for actual payments by check and EFT. The process also reconciles the Adjustments made to the participant account and Card Swipes of the HSA/ FSA cards. 
• Designed and coded the Spouse Claim Processing functionality of the Adjudication Engine, besides supporting the AE maintenance across multiple releases. 
• Participated in the design and coding of Business Logic Layer that underlies the working of various processes and SAM WEB application, which is the online user interface. 
• Designed and created the Banking Info Update process that loads the Bank data to SAM system. 
• Am the subject matter expert and point of contact for the Eligibility Loader processes, Rollover (paperless claim) processes and DI (Paper) claim processes 
• Designed and coded the Client Search Algorithm that walks up the Client Set up tree with multiple identification criteria and identifies the correct client for loading the participant and Eligibility data 
• Designed and coded the classes that create, update and terminate the participant Elections based on their existing election data and incoming file data. 
• Created nUnit test suites to cover the functionality of entire applications while developing software in the Test Driven Development paradigm, using mock objects 
• Designed and coded the stored procedure that deletes all the participant and client related data from the Legacy System's Oracle database, after their migration from legacy system to the SAM system. 
• Involved in the support and maintenance of Legacy Debit Card applications written in Java/ Spring / Hibernate with Oracle as backend database. 
• Involved in the maintenance of Legacy Choice One Link web application written in Java/J2EE/ EJB, and hosted on JBOSS server with IntelliJ IDE as development environment.

Senior Software Developer

Lexington, KY

September 2005 to October 2006

Lexmark develops and markets the commercial Printers. Lexmark is currently developing a system to manage and maintain all printer related configuration and maintenance data remotely across a network. This system uses Java SNMP API, Spring Framework, Firebird database, Hibernate Object-Relation mapping, Maven for Project builds, reporting and documentation and Eclipse as the IDE. 
• Worked in the analysis, design and development of this system 
• Worked on the possibility of moving some of the data processing business logic from Hibernate and Spring framework to Stored Procedures on FireBird database 
• Developed the performance metrics for the system with a view to identify potential bottle necks 
• Actively participated in the analysis and design for incorporating the communication infrastructure for this system to enable remote accessing of the application system 
• Designed and coded the Java Application that submits either a specified JavaScript or any number of JavaScripts from a directory, for execution

Software Engineer - Communications Group

Safetran Systems Corporation
Louisville, KY

July 2004 to August 2005

Safetran develops the hardware and software products that are used in synchronizing and maintaining the safe running of trains across the rail roads in America. Safetran is currently developing a next generation product that will allow better, secure communications between train dispatchers, there by increasing the efficiency of rail roads. 
• Wrote the Web application interface for the new product using the Model View Controller (MVC) architecture. 
• Configured and set up the Tomcat as web server for the web application 
• Web application uses JSP and HTML screens for presentation, servlets for data processing and, mySQL and SQL Server 2000 as databases 
• Used JavaBeans extensively throughout the web application 
• Created the database structure for the product and used JDBC Type IV driver and JNDI for database access from WebServer 
• Created an on line application that took the XML document created from the data generated by the embedded programming on dsp cores and displayed the same as a raw xml file using JSP 
• Designed and implemented the security features of the Web Application 
• Worked extensively on Database Management including taking Backups, restoring databases from Backups, setting up replication between SQL Server databases and in creating user/group logins and granting of different roles to the same 
• Created the SQL scripts and stored procedures for SQL Server database that allow the users to set up new logins, clean up unwanted data and generate a database comparison report at table level in the event of failure of replication between different databases 
• Worked on maintaining the existing VC++ code written for earlier version of product including code fixes to handle user problems

Analyst/Developer - Nominations & Scheduling

EPNG Western Pipelines
Colorado Springs, CO

December 2003 to April 2004

EPNG is involved in transportation of natural gas through a pipeline with a totally web based business. This system uses java based screens for front end with C++ and SQL server stored procedures as the processing layer with a SQL Sever database. 
• Involved in maintaining and writing new stored procedures, triggers and functions in SQL Server as part of designing and coding enhancements for the system 
• Designed and coded a backend stored procedure which generates data on which user has what permissions at the column level on the database across different servers and databases, using dynamic SQL and linked servers. This enabled the management to keep track of security information as per audit requirements 
• Designed and coded a stored procedure and a trigger to keep track of which user ids have login permissions and to keep track of any changes either to those permissions or the data related to the user ids, which fulfilled a security audit requirement for the management 
• Designed and coded enhancements in C++ batch programs which enabled users to send in data in additional file formats. 
• Designed and coded functional enhancements for the java screens using various features of java like containers, threads, event handlers and key and mouse listeners, which resulted in more user friendly screens with a marked improvement in performance 
• Handled the on call production support responsibilities for the system

Analyst/Developer - Revenue Team

El Paso Production Company
Houston, TX

May 2002 to October 2003

El Paso has moved its Oil fields information management system from Mainframe to Web based client/server system with Java based screens as front end, Visual C++ with ADO for processing and SQL Server as backend database in Windows NT environment, with Crystal Reports to help the users and management in keeping track of the system. 
• Designed and coded new C++ programs for batch processing, extensively using the ADO as a layer between SQL Server database and the processing language, and in maintaining the batch processes in the Journal Entry part of the system 
• Was involved in fine tuning the usage of ADO with C++, to improve the performance of the application system 
• Wrote SQL queries for the batch processes and fine tuned the same for improved performance through the creation of better indexes and better SQL joins. 
• Was involved in designing database tables to suit the data requirements of business users while coding new batch processes 
• Constructed and unit tested the front end Java screens using Versata Jade 
• Extensively interacted with the design team to translate the designs into functional screens and batch processes and for fixing technical issues arising at the time of system testing 
• Wrote custom java code depending on the requirements to stream line the screens' functionality and improve performance 
• Used MSAccess to create initial SQL query which was fine tuned using SQL Query Analyzer and used in building the Query Object for the front end screens 
• Extensively used the SQL Enterprise Manager to create test data for unit testing the screens and batch processes 
• Was involved in designing and coding Crystal Reports for keeping track of the system, and in maintaining the same 
• Handled the production support responsibilities when the system went live and was extensively involved in coding fixes for application related problems in both UI and batch processes, and in performance tuning the involved SQL, which resulted in a streamlined process and better performance


Southern Natural Gas
Birmingham, AL

October 2000 to January 2002

- Nomination/Scheduling team 
Southern Natural Gas is involved in transportation of natural gas through a pipeline with a totally web based business. This system uses Java based internet screens as front end, C++ as processing language, Oracle 9i database as backend in a Unix environment with EJB and Corba as the interactive layer between front end and C++. System was later moved from Unix to WinNT environment. 
• Extensively involved in analysis, design, coding and unit testing for software enhancements, bug removal and maintenance 
• Interacted with business users to transform user requirements into software enhancements 
• Modified existing C++ programs for system enhancements, system maintenance and bug removal 
• Extensively used MS Visual Studio's VC++ editor and debugging tools to resolve coding problems involved in moving the system from Unix to Windows NT environment 
• Made extensive usage of Roguewave DBTools, Classes and linked lists in coding C++ programs for software enhancements 
• Maintained the VB screens used as the front end for the system before their replacement by Java based screens 
• Wrote new functions, procedures besides modifying existing functions, procedures and packages in PL/SQL for implementing user requests for software enhancements and system maintenance 
• Wrote SQL scripts to be run in SQL*Plus, DBArtisan and Rapid*SQL for setting up test data for unit testing software enhancements and modifications 
• Used DBArtisan and Rapid*SQL to do performance tuning on existing PL/SQL procedures, functions and SQL queries with extensive usage of the Explain Plan feature 
• Wrote new Unix Shell scripts(Bourne) besides modifying existing ones as part of system maintenance

Analyst/Developer - CRCS team

Ryder -TRS
Denver, CO

June 2000 to September 2000

Ryder - TRS is a truck rental company with a web based business. This system used screens for front end, C and Pro*C as processing languages and Oracle 7.3 as backend database in a UNIX environment. 
• Was extensively involved in interacting with business users and in transforming their service requests into system enhancements and modifications 
• Assisted the team lead with analysis and design of new software enhancements 
• Coded new Pro* C, C programs for system enhancements, maintenance and bug removal 
• Wrote new PL/SQL procedures, functions and triggers besides modifying existing procedures, functions and packages for system enhancements involving the backend database 
• Was extensively involved in performance tuning of existing PL/SQL functions, procedures and SQL queries resulting in a better performance 
• Was extensively involved in writing new Unix shell scripts(Korn) and in modifying existing scripts 
• Handled production support for the CRCS(Customer Reservation and Customer Support) team 
• Set up test data using SQL*Plus for unit testing PL\SQL code modifications


ILD Communications
San Antonio, TX

October 1999 to January 2000

ILD Communications was a long distance telephone company and also handled bill processing for other telephone companies like South Western Bell. This system had C and Cobol programs as processing languages and Oracle 7.3 as backend database in Unix environment. 
• Was involved in analysis, design, coding and unit testing of C and Cobol programs to implement enhancements to the billing system 
• Was involved in moving the programs to Sun Solaris environment, in compiling and testing of the same 
• Coded new PL/SQL functions, procedures and triggers for backend as per system enhancement requirements 
• Handled production support for the weekly batch run of the billing jobs 
• Was involved in Perl and Unix shell scripting for running the batch jobs and for setting up test data for unit testing


MCI - WorldCom
Cedar Rapids, IA

September 1998 to August 1999

- Prep team 
MCI - WorldCom is a long distance phone company. The NCBS system uses COBOL as processing language and DB2 as backend database. Prep team is responsible for calculating the discounts, promotions and other charges that go on to the invoices sent to customers. 
• Was involved in the analysis, design and coding of software enhancements and coding changes for system maintenance 
• Assisted the team lead with exhaustive research and analysis in deciding if our team can meet the enhancement requirements for each new software release 
• Handled on call responsibilities for production support of the bi-weekly batch run of jobs for invoice calculation 
• Used MF workbench, file-aid and IBM syncsort for setting up the test data for unit testing


Perot Systems
Cedar Rapids, IA

March 1998 to August 1998

Perot Systems handled the project of upgrading the OS/VS Cobol programs to Cobol for MVS/VM for East Midlands Electricity, England. 
• Upgraded the Cobol programs using the tool CCCA 
• Unit tested the programs prior to and after conversion to ensure that the functionality remained the same. 
• Used HyperScript as a testing tool for testing CICS programs.


B.Tech. in Civil Engg

S.K. University