Key Responsibility Areas Major Activities :
Team and People Management , Thought Leadership ,
Client Management Architecture & Design Development & Support Planning, Tracking and Estimation
COMPETENCY PROFILE :
Core Java, Java - Spring Framework, J2EE, Java - ORM, Java - Swing Applet, Java - Web Presentation Frameworks, Java - Messaging Implementation, Java Web Services, SQL Development Languages, Enterprise Architecture Planning (REAP),
Planning/Execution & Tracking, Scoping and Estimating, Data Modeling, High Availability and Failover Applications, High Throughput / Transaction Application, Logical Architecture Design, OOAD and UML, Package / Vendor Selection, Performance / Capacity Planning, Word, Excel, Visio, Powerpoint, MPP
DOMAIN COMPETENCIES :
* Describes and contrasts OO principles, designing to interfaces, high-cohesion, low-coupling and GoF design patterns, and designs/codes using these
* Describes code quality in detail and re-factors bad code in medium/high complexity situations
* Demonstrates ability to deliver high quality technology solution as per functional and non-functional requirements.
* Demonstrates ability to establish, enforce and monitor steps of doneness for various types of activities that are done during Development and Maintenance phases of a project for quality of delivery.
* Demonstrates ability to enforce technology standards, best practices and approaches to be leveraged by the team.
* Designs and codes medium complexity applications leveraging advanced Java 1.5 or above features like Serialization, Cloning, Annotations, Generics, NIO, RMI, Sockets, JDBC, JSF, SWING and Multi-Threading
* Is able to develop persistence layer using JPA or any other ORM framework
* Describes XML Schema, various parsers, their usage, pros/cons of each, and uses these as appropriate
* Follows TDD for development and writes units tests leveraging frameworks such as JUnit, TestNG, Mockito, JMock etc. for extensive unit-testing
* Profiles an application, reads thread dumps, GC logs to measure application performance
* Is able to leverage MDBs and manage synchronous/asynchronous modes of messaging implementations using JMS
* Demonstrates ability to deploy application for at least one Web and/or Application Server
* Demonstrates ability to use Caching for performance improvement at the server-side keeping following aspects in mind (refresh strategy, cache size, caching algorithm used etc)
* Demonstrates ability to write complex SQL queries and stored procedures and improve performance of queries by applying techniques like explain plan, creating an index, changing data-type, refactoring/consolidating the query, optimization utilities (tkprof, trace) etc.
* Describes DB locking, transaction management features and codes accordingly
* Creates low to medium complexity build/release scripts
* Demonstrates ability to write scripts to report system performance (CPU, memory, processes, threads/LWPs, file descriptors, network statistics etc)