Software Architect / Engineer / Process Manager Resume
CA
SUMMARY:
- I have been working for the last 10 years with several companies like Confidential, Confidential, Confidential, Confidential, Confidential, Confidential in full time/contract roles as a programmer, software engineer, architect, technical leader, SME, mentor and software manager.
- I sense the problem as a whole, am not limited by a technology, adapt to new technologies quickly and deliver in half the expected time. I have been recognized for great on - time quality deliverables many times and have proof from manager emails and quotes. I thrive in challenging, work on multiple problems, deliver before deadline kind of environments. I have lead and managed teams of various shapes and sizes. In my free time I write software personally, wrote an app and now working on a second one. Other fields I am interested in are robotics, AI and Physics.
TECHNICAL SKILLS:
PROGRAMMING LANGUAGES: JavaScript, Node.js, Java, Objective C, Swift, bash shell scripting
NODE JS: async, fs, socket.io, mongodb-native, apn, request, formidable, forever, dot.js
NO SQL: Mongo DB, node-mongo dB native, Java Mongo dB
JAVASCRIPT/JQuery: Object oriented, created reusable components, namespaces, modules, libraries and frameworks, design Patterns, Dom manipulation, jquery-ui, Dojo
SWIFT: IOS8, Auto layout, cocoa, Pods, extensions, Photos
FRONT END MVC: Angular JS, 2-way data binding.
GRAPHICS: Canvas, SVG
HTML5: File Access, Web Sockets, WebRTC, Canvas, and SVG.
BROWSER: Safari (Web Inspector - Remote), Chrome (Devtools), Firefox (Firebug)
CSS: including -webkit, transform, transitions, animations, Bootstrap, responsive design
WEB/APP SERVERS: Nginx, Tomcat, Web Sphere, JBOSS, WebLogic, Web Sphere.
NGINX: proxy pass, multiple virtual servers, load balancing, location (regex), static file server, http user agent, ssl, gzip, other http headers, ip hash sticky.
TASK RUNNERS: Grunt, Maven, Ant, and Jenkins
TRACKING/MANAGEMENT: JIRA, MS Project Plan, RTC
MOBILE: IOS, Cordova, Safari - Remote Web Inspector.
CORDOVA/PHONEGAP: created new plugins - multiple media selector/uploader.
IOS: Storyboards, Observer Pattern, ALAssetsLibrary, Grand Central Dispatch, concurrency programming, cocoa pods, afnetworking, NSURLSessionTask, NSURLConnection http/json, AVAssetExportSession, UICollectionView, UITableView
JAVA: Standard, J2EE, Core, Reflection, JSP, Servlets, EJB, Custom Tag, JSTL, JDBC, JPA, JMS, Sockets, Multithreading, Design Patterns - MVC, Adapter, Session Facade, DAO, Business Delegate, Service Locater, Factory, Abstract Factory, Command Line, Reflection and Singleton, JSF.
SPRING: web Flow, MVC
XML: XSL, XSLT, XPath, JAXEN, JDOM, SAX, SOAP, JAX-RPC, Schema, JAXB, Jibx, Web Services - Axis, Spring WS, WSDL, XMLA, XML Spy
FRAMEWORKS: Angular, Dojo, PhoneGap/Cordova, spring, Ibatis, Struts, Hibernate, RichFaces
SOFTWARE TESTING: Junit, Junit-Perf, TestNg, Jasmine, EasyMock, Mochito, HP Quality Centre, RubyMine, Gerkhin, JRuby, Cucumber, Selenium
IDE: Sublime, Eclipse, RSA, NetBeans, Weblogic Workshop, SOAP UI, and XCode
VERSION CONTROL SYSTEM: SVN, Git, CVS, Clear Case, Dimensions
LOGGING: Log4J, apache commons
DATABASE: Data Modeling, Oracle, SQL Server, MySql, MS Access, Dimensional Star/SnowFlake/Relational, OLAP, Warehouse, OLTP, PowerDesigner, ERWin, TOAD, DB Visualizer, ORM - Ibatis, Hibernate, JDBC Metadata, SQL/DB Tuning, Explain plan Analysis, MyBatis. MongoDB
ANALYTICS/REPORTING: Business Analytics solutions using MS SSAS (Design, implement and integrate Analysis Cube using MS BIDS), MDX, XMLA, JPivot, Olap4J, MS Excel, PivotTables/Charts, MS BIDS, ETL
OPERATING SYSTEMS: Mac OS X / Server, Windows 2000/XP/7, RHEL, Solaris
DEVELOPMENT MODEL: Agile/Scrum, Waterfall, TDD, ATDD
ARCHITECTURE: Web, Client-Server, SOA, REST, Distributed/Component n-tier Architecture, UML (Sequence, Activity, Class Diagrams), Visio, RSA, Together Soft.
LEADER: lead a team of 2 - 7 developers several times, workspace set up. Scrum Master.
MENTOR: mentored agile processes, JavaScript, Node JS, Java.
MANAGER: prepared project plan, timelines, risk, resource procurement, expenses, and tool choice.
PRESENTATION & BOOK KEEPING: PowerPoint, SharePoint, JIRA, HP QC, RTC and other visual displays.
PROFESSIONAL EXPERIENCE:
Confidential, CA
Software Architect / Engineer / Process Manager
Responsibilities:
- Architect new portal combining 3 existing apps into 1 with a unified interface.
- Created a Star Rating Feedback System with a result viewing and analysis portal, stack isjavascript/jQuery/HTML/CSS and Nginx/nodejs/mongodb hosted on RHEL server. Implemented deployment strategies for Staging/Production. Plugin works out of the box for IE > 7, FF, Chrome, Safari on Desktop/Mobile web sites with no install supervision.
- Is elected the leader to study viability of open source model of development using Github Enterprise/Git. Researched and produced a document with analysis.
- Responsive front-end design using bootstrap, angular and jQuery self-written and other 3rd party components.
- SME for new technology recommendation - recommended Angular, Bootstrap, promoted node.js for backend to build a REST/JSON style lightweight, scalable, plug & play web service backend.
- Converted Vraptor based stack to Java Spring MVC - REST/JSON.
- Converted DHTMLX to Angular.
- Wrote or extended many jQuery/JavaScript/angular/bootstrap components like infinite drop down menu, smart modal window, uigrid based table.
- Became an Agile Process Director, giving presentations, exploring tools and recommending best practices for efficient software development.
- Created Development project structure for other team members to use.
- Team mentorship and on Angular, Bootstrap, Responsive design, Java/Spring
- Recommendations are praised and tracked by higher management with 0 day 0 defect launch of the rating system and for proposals to bring 150 apps to the new portal.
- Interview new resources to be part of this bigger team.
Confidential, Columbus OH
Assistant Vice President - Lead/Senior Developer
Responsibilities:
- Worked on web based Access Next Generation Security Administration Application.
- Agile and Iterative style of development, requirements gathering, story/epic Acceptance Criteria definition, daily standups, retrospective, iteration planning, TDD with Junit/Mockito and ATDD with Selenium/Cucumber, Task assignment, track, manage and report progress.
- Used Java, Spring MVC, JSP, Web flow, JSF, JavaScript, HTML5, CSS, Hibernate, Junit, Mockito, Jasmine and several open source libraries to develop a multi tier application for various browsers.
- Spring based, several Java design Patterns, object oriented/modular, Javascript/Jquery design patterns.
- Maven, Eclipse, Tomcat, SVN, Jenkins, JIRA used as code/build/deploy/track environment.
- Served as a mentor, Lead (geographically located resources) proposed new technology recommendations with main focus on performance, scalability, more manageable code with lesser segregation, combining modules, SQL optimizations, browser Javascript /HTML/CSS optimizations for a quick response.
Confidential, Columbus OH
Senior Developer
Responsibilities:
- Design, develop, implement and maintain Dcdweb (Deferred Compensation Direct Web) and the rewrite - Public Sector Optimized Web Experience (PSOWE) of Retail Service Center (RSC) application for public sector in Retirement Solutions Domain.
- Goals include improving the design, usability, accessibility, navigation, content management, and capabilities for Public Sector participants and Plan Sponsors with Dcdirect being the goal state record keeping platform for Retirement planning. As plans migrate to Dcdirect over time, they will benefit from the new website.
- Followed Agile development methodology - Participated in point estimation for user stories, 3 amigos, pair programming, used RTC (Rational Team Concept) for Agile management. Followed a 2-week Iterative development cycle ending in Retrospectives and show & Tell.
- Wrote struts actions, interceptors and validators for an MVC. Objects are wired using dependency Injection (Spring Framework), Manual and Auto wiring is used. Views are tiles - jsps with custom, struts and jstl tag libraries.
- Data is stored in Oracle databases. A database access API is provided in a Jar format. Struts Actions access the API using an Adapter layer. An object mapping technology, Dozer Mapping, is used to map Transfer Objects to objects available to the Web layer.
- Used Ibatis for data access through a service-DAO layer.
- Maven was used as a project Build and Management tool and Tomcat as the local web app server for development.
- Used Hudson for continuous integration.
- TDD was used as a development methodology using Junit and EasyMock
- ATDD was used in some stories
- Worked on client side browser compatibility issues for IE 6, 7, 8, 9, Firefox, Chrome using browser tools like Dev tools and Firebug.
- Written CSS, Jquery, and JavaScript, html, json for web look and feel and client side rich interaction including AJAX communication. Used some Jquery plugins and modified them when required Used bash shell for environment management activities like running scripts, logs retrieval, defect analysis, etc.
- SVN was used for content management.
- Toad was used as a database client tool and Eclipse for code development.
- Struts Validator and DefaultWorkflowInterceptor are used to handle server side validations.
Confidential, Columbus OH
Senior Developer
Responsibilities:
- Design, develop, implement and maintain IAM - a single sign on NW application and CAM -customer account management applications in an agile environment of NW ADC.
- Participated in point estimation and worked with Test, Tech and Requirements Leads to refine User stories, Acceptance Criteria, Test scenarios, browser compatibility for web based modules and other technical hurdles as part of defining requirements.
- Worked on Clear Trust client side single sign on cookie-based authentication for the IAM module.
- Worked on the development of Hard bounce postal mail system, mails are sent out as web service calls to OMS - outbound messaging system, used JMS queues, Oracle databases, AXIS and JibX based web service architecture, worked on batch processes.
- Application is based on a Spring based framework, using singleton beans, Struts 1 based MVC pattern.
- Web based screens are implemented using JSPs which work with the back end using loose coupling. Facade, DTOand DAO pattern along with Business Objects are used to accomplish this goal.
- Used Javascript, HTML, JSP, AJAX, CSS, spring tags and worked on browser compatibility with IE 6, 7, 8, Firefox3.X, Chrome, Safari browsers. Used developer tools for various browsers for aesthetic correctness.
- Set up local Websphere application server and implemented settings for JDBC data source set up, JMS Queue set up, security s, MDBs, and other resources for the application.
- Used bash shell with putty to download logs and do defect finding and error analysis at various server environments.
- Worked on web services - AXIS2 1.3 - Generic web service client - NWs wrapper around web services, JibX bindings for marshalling/unmarshalling, Soap UI for stand alone head less testing.
- Worked with Junit 4.4 for unit testing.
- Used Ant build xmls.
- Used Hudson for continuous integration.
STACK- J2EE, RAD, Spring, Struts1, JDBC, JMS, CSS, AJax, JSP, MDB, IE/Chrome/Safari, Firefox browsers, Putty, Bash shell, Java script, HTML, Junit 4.4, Jibx, Ibatis, WebSphere, Web Services, AXIS2, XML.
Confidential, Charlotte NC
Architect / Senior Developer
Responsibilities:
- Design, Architect, Develop and implement Web based Reporting, Analysis and Mining POC solution for Confidential ATM Hardware Component and Module level test data.
- Studied existing process for BOA ATM Operations- Report Generation and Analysis System implemented using variety of open source and out of the box proprietary technologies.
- Identified and recommended how the current process can be improved using various computer software’s both open source and proprietary.
- Define the scope of required changes to the current system, conceive, design and choose from an appropriate software development methodology to implement the purposed system.
- Created various system and organization architecture diagrams of a new proposed solution using MS Visio. Created an estimation and resource requirement analysis in terms of new technology recommendations, project objectives, cost and time.
- Developed a standard ETL (Extract, Transform and Load) process with input from a variety of sources including Flat Text files, XML and Relational and Access Databases using custom multithreaded Java /JDBC solutions. Data is transformed and Loaded into a new data warehouse implemented on SQL Server. Created Perl Scripts running on UNIX system for Batch loading of Data from an ATM Hard drive using Tivoli commands.
- Created a new web based reporting/Analysis and Mining portal. Portal is hosted on JBoss 4.It is based on the Spring Framework. Created build XML and project name space.
- Presentation layer is based on a FrontController and MVC Pattern using Spring MVC. MulitActionController, JSTL Views and Java Bean Modals are used. AJAX is used for on screen fast data Analysis Requests. JavaScript, HTML, JSTL, Custom Tags are used for creating a Dynamic view experience. A Logon form is provided which uses JSP Tag library, and validator for a simple UserId/Password Authentication.
- Back End Layer is a Data Access Layer implemented using JDBC.Toad Explain plan is used for query optimization. SQL Server 2005 is used to host Data Warehouse with very large Data sets .DB uses multidimensional star - snowflake schema
- Static Reports are created using IReports, Jasper Reports, itext, Jakarta POI and JfreeChart.Created an abstraction layer with interfaces used by the Controller to create 1 click reports.
- OLap4J an open source Java API is used for querying SSAS hosted Data Cube. It provides an OLAP view for on screen fast data analysis.
- Created the Warehouse and Cube schema optimized and tuned for large sets of data. Warehouse is based on star snow flake schema. Created appropriate clustered / non-clustered indexes, design decisions are based on space, scalability, performance and data management. Created various dynamic views and T-sql scripts. Used SSIS for data loading for certain static dimensions.
- Developed Proof of Concept versions of the software, define test cases, Logging and maintenance activities for the software developed
- Created Perl Scripts running on UNIX
STACK- J2EE, Visio, MS Access, Excel, Olap4J, MS Sql Server, SSAS, XMLA, JBoss, Spring MVC, UML, XML, SOAP, XSL, X path, JasperReports, TOAD, MS BIDS, JavaScript, HTML, JSP, Servlets, Perl, JPivot, JSTL, UNIX, Custom Tags, My Eclipse.
Confidential, Lowell MA
Architect / Developer
Responsibilities:
- Design, develop, implement and maintain a series of solutions for a Dimensional Database called Holistic Data Store (HDS) servicing the needs of JPMC Treasury Services. Variety of systems uses HDS as an Entitlements repository. Solutions include -Migrations from Legacy Systems, On boarding first time products, Service layer for PEGA PRPC based UI component called Access Admin, interfacing with BEA Aqua Logic Enterprise Security, Provisioning to downstream and Legacy systems.
- Held Requirement gathering sessions various teams analyzing, providing and validating solutions ensuring all requirements are clear enough for the Core and Product deliverable owners to start documenting System Use Cases.
- Involved in the HDS - Dimensional Star - Snowflake Schema design sessions with Data Architect
- Involved in creating UML Class / Sequence / Package diagrams using RSA and Visio.
- Co-ordinate meetings with various Product Business and Systems using HDS, keeping requirements updated for the development team
- HDS Interface layer Framework created using Java Reflection and various design patterns like Factory, Abstract Factory, Command Line, DAO/DO, and Facade.
- Involved in providing optimal DB Access solutions, which included SQL Tuning, Explain Plan assessment, Materialized Views, Dynamic Views, Stored Procedures, Functional Indexes, Normalization, Demoralization. Developed Extensions to Spring - Hibernate based Data Access layer of Legacy Global Entitlement Store .The extensions created objects, which are marshaled into a request XML using JAXB.
- Involved in the design /development of a Web Service Layer called ACE Interface between Legacy Systems like GE, Forms, APS and HDS using Spring - WS.
- Involved in creating project Plan, accessing man-hours, Resources required, software tools needed and other SDLC estimations.
- Created Build XML, Project Name Space, core and product JAR deployment model and Product Entitlement Object model.
- Helped define the overall SDLC process and created a Coding best practices document ensuring everyone follow standards like Central Logging, Utility components, proper HDS Error /Exception handling, etc.
- Assuring timely defect delivery and allocation to developers. Responsible for code review, defect management process and coordinating efficiently with the QA teams.
- Used Bash Shell Scripting for DB Updates, Data Loading, Building, Moving and Deploying Jar/Ear on Weblogic Managed Servers.
- Involved in the Performance Tuning phase. Worked with GC Analyzer to study production time JVM Heap profile and advocated improvements wherever possible. Also Design and develop a JSP/Servlet based Framework for time measurements.
- Leading a team of onsite and offshore Resources including developers and DBA.
STACK- J2EE, Web Services, Spring WS, JDOM, Hibernate, Oracle 10g, Log4j, Weblogic 9.x, Linux Bash Shell Scripting, Weblogic Workshop, RSA, Dimensional model, Star - Snow Flake Schema, WSDL, UML, XML, UNIX, SOAP, XSL, X path, TOAD.
Confidential, Harrisburg PA
Senior Developer
Responsibilities:
- Design, develop and implement Dot Centric Application, as part of - Release 1 development effort of replacing the Confidential ’s Safety Administration Legacy System.
- Held JAD sessions, gathering requirements from the client, analyzing it, provide end-to-end solution and discussing architecture changes with the various track leads. Worked on Functional Specification documents and helped define the scope of the project.
- Release 1 divided into several teams - Financial Administration, Entity Administration, Inventory, Framework, Reporting, Data Base Management, Site Minder, Interface, and Convergence. Responsible for communication and coordination between these teams.
- Helped define the overall SDLC process, ensuring everyone follow standards like Central Logging, using Framework defined components, proper Exception Handling, etc.
- Making sure the best practices are followed as per BIS team standards and the design is consistent with the product architecture, and is detailed to a point where implementation can proceed.
- Responsible for code review, defect management process and coordinating efficiently with the System Test and UAT teams.
- Helped define the overall Data Architecture, held meetings with the Data Architect and the Data Modeler for Release 1.
- Application is using a business delegate design pattern to reduce coupling between presentation-tier clients and business services which involves developing presentation, middle and back end layer components using (jsps, action classes, delegates, sessionEJBs, business objects)
- Struts based look up dispatch action framework at the presentations tier is used.
- Data Access objects, domain objects and custom framework API written to process SQL queries used to access databases.
- Functionality spread across various struts based jsps called screens, each having their respective Action Classes and Action Forms.
- Helped in developing session management.
- Helped in developing validation architecture which uses JavaScript client and java based server side validations role based access developed to restrict access to certain parts of that application developed as part of a separate module called identity manager and used various other j2ee technologies like servlets, RSA, websphere is the application server, Tiles framework used for standardizing the outlook of the application.
- Responsible for Code walk thru and performance tuning.
STACK- J2EE, Oracle 10g, Agile, Log4j, WebSphere, RSA, TOAD, Struts, JSP, Servlets, UNIX, AJAX, JavaScript, CSS, JSP Custom Tags, EJB, iText.
Confidential, Winston Salem NC
Senior Developer (EPS Team)
Responsibilities:
- Enterprise Print Service (EPS) - Servicing all the printing requirements for GMACI. Printing Requests are made from numerous services, stand-alone clients, portals, independent agency applications, Call center applications, etc. EPS, a middleware, processes and send for printing to outside vendors like Pitney Bowes and Silver Pop.
- Worked on several releases starting from 2.6 to 2.8, 2.6 - analysis, design and implementation of state specific Policy Packages, 2.7 - added few more states and CUI routing calls through EPS, 2.8 - unsubmitted endorsements project.
- Worked on Functional Specification documents and helped define the scope of the project.
- Involved in the Full Life cycle of the project, i.e. through design to testing and production support.
- Coordinating analysis and design efforts between various teams like forms, agency support, direct, mainframe, MOBIUS and Pitney Bowes Held XML Schema design meetings with XML Architect.
- Used Eclipse, TOAD, CVS, Dimensions, Rational Rose, XML Spy, Log4J, etc ... as software tools
- Used various J2EE and XML related technologies.
- For persistence EJB (all session, entity, and message beans along with their deployment descriptors) was used.
- XSLT formed the core of this service. Worked on developing various XSL stylesheets for XML-XML transformations based on Confidential ’s internal Schema and also on XML - HTML transformations to generate output to be displayed on client browser.
- JDOM was used as a parser and handler of all XML transformations.
- Used Java Sockets and Multithreading to interface between few internal Utility Services.
- Worked with deploying and testing service on JBOSS 3.2.3 and 4.0 for later releases.
- Worked on client side technologies like Java script and XHTML.
STACK- Core Java, J2EE, XML, XSL, XSLT, CSS, Servlets, JSP, JavaScript, JAXEN, JDOM, SAX, JASPER, XSL translations and parsing. Oracle 9i, Netbeans 3.6 and 4.0, Java Multithreading, Java Sockets, Eclipse 3.0, Linux Korn Shell scripting, Microsoft Visio, CVS 1.12, JBOSS 3.2.3, EJB 1.0, Agile - Scrum development model.
