- Solution Architect with overall 17 years of IT experience in various software life cycles.
- Designed and managed projects on both Waterfall and Agile methodologies.
- Had developed enterprise projects covering various aspects like; gathering requirements, analyzing them for its feasibility, identifying and designing hardware and software layouts, preparing project estimations and project plans, identifying risks and its mitigation.
- Have experience in designing cloud based product application.
- Have worked on domains like Stock Market, Banking, Retail, Telecom, Production, Payroll and Finance.
- Have experience in rolling out processes to streamline project activities and building up a team.
Architectural skills: Unified Modeling Language, Object Oriented Design Methodologies, SOA, Java Design Patterns, SOA Architecture.
Languages: Java, C/C++, Visual Basic, Visual Foxpro, PL/SQL
Technologies & Frameworks: JSP, JSF, Servlets, Struts Framework, Hibernate, Spring 3.2, Swing, JDBC, ODBC, JNDI, XML, XSD, XSLT, HTML. Maven
Web Technologies: Java Script, VB Script, SOAP, REST, JSON, WSDL,AJAX,, SAX, DOMWeb/App Servers: Tomcat 6,Apache 5.2,JBoss 4.2,BEAWebLogic7.0,IBM WebSphere7.0,IBM MQ
Databases: Oracle 11g/9i, MS SQL Server 2008, MySQL, SQLite & MS Access
Operating Systems: MS - Windows, UNIX, LINUX, iOS & MS-DOS
Enterprise Tools: Rational Rose, RequisitePro, WebLogic Workshop.
Code Repositories: CVS, GIT/STASH, PVS, PVCS, VSS, ClearCase.
Servers: Windows NT/2000, Lotus Domino Server and MS-Project Server.
Confidential, Little Rock, AR
- Collected/translated business requirements into design and provide the team. Both SOAP and REST WebService were developed which were deployed on Blade servers, facilitating vertical scalability and IBM DatapowerXI50 were used as WebService endpoints.
- Maven is used for integrate different module with Jenkins as auto build tool.
- One of the major project is a SOAP based web application for Confidential, which included integration of third party Banks and RSA as authenticator.
- As ESB layer between web services, IBM Datapower box was used.
- Third party web service were consumed. It is one of the highly integrated project Confidential maintains.
- Engaged in development activities, while managing the project overall in Agile.
Confidential, Pleasanton, CA.
- As a part of R & D department; two projects were handled. One is enhancement of legacy product and the other is a green-field project based on new architecture based on SOA.
- As a part of architect group, need to vet different technologies and its architecture for the new product which is getting developed.
- After understanding the Conceptual and logical diagram, right technology for each of the components had to be identified.
- In this process, different technologies had to be vetted by researching and developing Proof-Of-Concepts to find its attributes like complexity, performance, scalability, licensing, support, learning curve, etc.
- Once POC is complete, to come to a final conclusion, it needs to be presented before team for a brain storming session.
Confidential, Milpitas, CA
- My role was to review code and test cases, drive the team in technical issues and manage the project to its deployment and closure.
- Designed and involved in the development of Data Synchronization module which is a core part of product.
- Swing was used as UI and core java was used as components.
- Real time data synchronization was managed even during intermittent network connectivity.
- Multiple threads were used to reduce data transmission latency.
- Since server is on PHP and client is on Java, client side app used RESTful protocol (JSON) to exchange data.
- I developed Java components to distribute data to multiple MYSql databases at server side.
- These data were sent back to client as AES encrypted files. Application is secured by user login passwords, which were MD5 encrypted and stored in local SQLite database.
- To support different makes of thermal printers, a customized component was developed to replace the device drivers.
- UI developed in Swing allowed to store Unicode instructions in SQLite local database.
- To configure a device, its Unicode instruction needs to be keyed into application.
- This gave the ability to connect almost any thermal printers to the device.
Environment: Java for data publishing components, Unix is the OS at server side, PHP for server side development, MySQL as database. Client terminal used Ubuntu (Linux based) as OS, Java for client side development, SQLite as database. CVS was used as code versioning tool.
Confidential, San Jose, CA
- Since the project was outsourced to offshore, real time interaction between the client and development team was challenging and critical.
- For architecting and UI re-designing, client had rolled out a separate onshore team for the project.
- My role was to work with them to discuss the flow and identify any gaps in the UI and conveying the ideas back to the offshore development team.
- Since the development was on Agile model, Scrum meetings were to be attended and keep management updated.
- Had to monitor development progress and identify risks and mitigate it.
- A close interaction between onshore and offshore was required.
- Once the flow and design were finalized, went back to offshore, to work along with development team.
- Application bandwidth usage was tested and controlled using WireShark, since network may not be strong or stable.
Environment: Windows was development environment with iOS simulator, MagicDraw for developing UML diagrams, WireShark for testing network bandwidth usage, iOS and ObjectiveC on iPhone devices, SQLite as its database and iPhone devices. CVS was used as code versioning tool.
Confidential, Pleasanton, CA
- Analyzed the requirement, architected high level flow of application, identified software and hardware to be used and prepared UML diagram, finalized deployment configuration considering the scalability and manageability of the product, estimated the time required and created a project plan in MS-Project.
- Identified risks and its mitigation. SOA model was used to design components.
- Led the team in development and testing, and finally deployed the beta version on Amazon EC2 cloud environment.
- REST webservice were designed to consume it in hand-held devices like iPad, iPhone etc.
- For scalability, AWS environment were chosen.
- Deployed it on two server on a cluster for high availability.
- Vertical scalability was considered, so both CPU, memory were configured to scale up and down as required.
Environment: Groovy/Grails and Ajax were used for server side development, Unix is the OS for the server, ObjectiveC is used for iPad clients, EC2 Cloud as the server environment, Tomcat as the WebServer and MySQL as the database. CVS was used as code versioning tool and Jira as defect tracking tool.
Confidential, San Francisco, CA
- When new application requirement is received, need to analyze it and design the flow for new functionality.
- Provide estimation and ETC for the project.
- Prepare test cases and involve in code development with the team.
- Also had to do code and testing review.
- Raise the Change Control and assist in implementing the code in Agile model.
- Provide weekly updates to onshore and offshore management.
Environment: Unix and Windows were the OS, SOA architecture, WebLogic was the Application Server, Oracle was the database, Spring and Hibernate was the framework, ClearQuest was the bug tracking tool and ClearCase was the code repository.
Confidential, Richfield, MN
- When the requirement comes, needs to analyze the requests and design the flow of the application.
- Calculate and provide ETC for the task according to the resource availability.
- Later getting involved with the team in development, reviewing and testing the code.
- Raise Change control request and get it approved.
- Assist implementation along with the team.
- In the existing application, file transfer failed at-least once in a day, thus bringing monthly trouble ticket count to 25.
- The flow of application was redesigned and developed the code.
- Thread concept were introduced to facilitate simultaneous file transfer.
- This resulted in parallel file transfers thus bringing down file transfer time considerably.
- Analyzed the nature of file transfer error occurred in existing application.
- Proposed an alternate flow for the exception, which enabled the application to be resilient.
- This brought down the trouble ticket count to zero.
Environment: Application functioned on Unix environment, Core Java was used to develop application, Tivoli was scheduled for invoking application, Unix Shell Script was developed to start the application
Confidential, Seattle, WA
- Requirements coming from applications need to be analyzed for the feasibility. If feasible, need to estimate the task involved, identify and mitigate any risks, design the flow of application and get the development done.
- The code and test cases needs to be reviewed before the application went for QA.
- Once QA has certified it, need to raise Change Control for implementation. Once it is approved, need to assist production control team to implement it.
- Change control happened once in a month and system needs to be up by 24/7 on all 365 days. So implementing the changes without interruption was critical.
- I was involved in stage-by-stage implementation.
- Implementation involved re-routing of traffic to West zone before implementing it on East zone, and then re-routing traffic to East zone before implementing it on West zone.
- Since the traffic was heavy, least traffic time was selected for implementation.
- Application could record an uptime of 99.9%.
Environment: Unix was the application environment, Java, BEA WebLogic Servers, Spring, Hibernate, Load Balancers, Routers, Oracle database, MQSeries Server. ClearCase was used as code repository tool and ClearQuest was used as defect tracking tool.
- It was a production support team.
- The bugs which could not be processed at tier 1 and tier 2 level were to be fixed. System needs to be analyzed for the bug and then fix it.
- If an enhancement requirement arises, test case needs to be prepared and get involve in code development and testing.
- Peer review of code and test cases were also done.
- Raise change control.
- On receiving approval, assist production control team to implement it.
Environment: Unix was OS on server, JSP was used for UI development, Servlet on the backend, Java was used for developing components, IBM Websphere and MQSeries were the servers. ClearQuest was used as defect tracking tool.
- Gather requirements from the users.
- Design the UI and get the approval from users.
- Design the flow of application and develop tailor made applications.
- Also required to understand existing functionality of VB application and rewrite them in Java. Additionally, maintained Oracle, Windows and Lotus Domino server.
- Deployed new Lotus Domino Server at different locations and established internal email communication.
Environment: Windows-NT/2000 was the OS, JSP, Servlet, Visual Basic was the development platform, Tomcat was the server, Oracle 8i was the database. Visual Source Safe was used as code repository.