Job Description :
Job Description:
This position is a Java Developer for Domino’s eCommerce Development organization. High level responsibilities include interpreting functional requirements and designs to design, develop and implementing software solutions following Domino’s agile development process. The position requires a minimum of 4-5 years of industry experience in writing solutions using Enterprise Java technology skills and experience. Software development primarily consists of developing server-side processes and APIs for multiple front-end client applications.

General Responsibilities
Analyzes the functional requirements and designs and implement them into software modules
Follows Domino’s standards for Java and API development in delivering the required software.
Follows industry standards, patterns and best practices for J2EE development techniques in implementing business rules
Keeps in touch with the latest Java technology and continues to develop his/her technical skills
Responsible for unit testing his/her software modules.
Is familiar with Eclipse (Integrated Development Environment) and the usage of source code repositories (like SVN) from within Eclipse for all Java projects.
Proficient in the use of multiple data storage and access techniques including abstraction layers, DAOs and RDBMS such as SQL Server
Understands and is able to identify and implement reusable code in an object oriented fashion
Contributes to the Domino’s Java Developer practice, which is a community of developers focused on consistency in practice and driving technology innovation through both process and technology
Collaborates with the project team and is willing to be flexible to achieve team goals.
Assists the lead developer in producing the relevant artifacts for the project
Assists team lead in building, deploying and releasing application builds
Identifies product or process related development issues and provides constructive feedback to the Manager of Services Development as well as the Technical Delivery Manager
Strong understanding and demonstrated use of design patterns
Participates in project planning, estimation, standup and status meetings as appropriate
Ownership mentality while maintaining a team focus
Experience in building unit tests, preferably test driven development
Define application deployments and work with operation teams to insure proper deployment
Bachelor’s degree in computer science, math, computer engineering or equivalent experience
4+ years development/architecture experience with web infrastructure
Requires strong skills in Java, Java EE, JSP, Servlets, JDBC, JMS, XML and SQL
Understanding of REST, SOAP and JSON
Working knowledge of such platforms as Windows, UNIX, and Linux.
Experience in using Eclipse for IDE
Proficient at using code profiling and debugging tools
Understanding of relational database concepts, ER diagrams and database objects.
Able to effectively interact with business customers to understand and derive business needs
Strong passion for learning
Excellent written and verbal communications skills
Strong conceptual thinking
Understanding of different phases of software development life cycle
Good communication, interpersonal, and problem solving skills.
Ability to work independently as well as in a team environment.
Experience with Test Driven Development
Experience using common Java frameworks and libraries such as Spring and Hibernate
International software development experience (multi-lingual, multi-currency, geographic and locale awareness)