DUTIES & RESPONSIBILITIES:
Application Development 60%
" Identify and analyze user requirements.
" Prioritize, assign and execute tasks throughout the software development life cycle.
" Design and review database architecture.
" Schedule product releases with internal teams.
" Follow security best practices.
" Design, build, and maintain efficient, reusable, and reliable Java code.
" Ensure designs follow specifications.
" Ensure the best possible performance, quality, and responsiveness of the applications.
" Identify bottlenecks and bugs, and devise solutions to these problems.
" Maintain code quality, organization, and automatization.
" Translate application storyboards and use cases into functional applications.
" Effectively design and develop multi-tier application software using industry standard software design methodology, framework & technical architecture standards.
" Design and develop software to integrate with a variety of 3rd party vendor systems / service providers.
Technical Leadership 35%
" Perform technical evaluation of tools and products and contribute towards technology architecture decisions.
" Research, evaluate, and incorporate new technology and tools to enhance the development process; make technical recommendations based on best practices; participate in the establishment, review, and enforcement of application development standards and procedures.
" Lead departmental training efforts focused on Java and object-oriented programming for multi-tier
" Act as a resource for clients to obtain necessary information to enhance their user experience.
" Mentor colleagues to obtain necessary information to understand the environment and develop more applications to enhance the end user experience.
" Support business and technology teams as necessary during design, development and delivery to ensure scalable and robust solutions.
" Assist in technical design, quality review and testing of program code, system integration testing, user acceptance testing and implementation roll-out.
" Write technical design, architecture, assessment and other documents.
" Communicate effectively with the technology team and business users.
" Provide ongoing system support by maintaining and enhancing existing software applications.
" Ensure excellent customer service by analyzing production issues and providing prompt resolutions.
Other duties as assigned 5%
MINIMUM EDUCATION AND WORK EXPERIENCE:
" Minimum of eight years of software development experience, six years of work experience and an associate degree in a related field, or four years of work experience and a bachelor's degree in a related field.
" Demonstrated experience working with Web Service standards (SOAP, REST, WSDL, etc.) and coding.
" Demonstrated experience with relational databases and SQL.
" Demonstrated experience with web service API's.
" Demonstrated experience with the entire development cycle (planning, analysis, design, implementation, testing and integration, and maintenance).
ADDITIONAL PREFERRED EXPERIENCE:
" Master's degree in Computer Science, Engineering or a related technical field.
" Work as a Senior Developer or similar role.
" Demonstrated experience working with content management systems.
" Demonstrated experience with AJAX principles and coding.
" Demonstrated experience with Java Messaging Service (JMS) principles and coding.
" Demonstrated experience with mission critical, 24x7 systems.
" Demonstrated experience managing complex projects.
" Demonstrated experience developing applications in a complex infrastructure such as web server clusters, load balancing, and message broker services.