Descriere
Main duties
- Work in a Scrum Team to deliver software in each sprint
- Design and architect new areas of functionality in the products
- Work with the Development Manager to establish goals and directions for the products
- Work with the QA team to deliver testable, quality code
- Mentor other team members where appropriate
- Transfer subject-matter expertise to other members of the team where appropriate
- Investigate, analyse and document reported defects
- Perform maintenance programming and correction of identified defects
- Create, document, and implement unit test plans, scripts, and test harnesses
- Testing the product in controlled, real situations before going live
- Perform related duties as assigned
Specific duties
Product enhancement and innovation
- Technical design and architecture for new software features
- Development of new features and enhancements to existing functionality
- Formalize and lead the adoption of software development best practices
- Defect investigation and resolution
- Analyze defects in the software to determine the root cause of the issue
- Expand the investigation to incorporate other related areas of the product
- Propose technical solutions for the resolution of defects for approval by the Scrum team
- Implement the necessary software changes in order to resolve defects
- Merge the required changes to all supported versions of the software
Release preparation
- Prepare releases, patches, cumulative updates and hotfixes for subsequent QA
Quality Assurance
- Lead code quality initiatives (code refactoring, code reviews)
- Create, document and implement unit tests to prevent defect regression
- Testing the software using replica customer environments
Development methodology and process
- Formalize and lead the adoption of software development best practices
- Ensure technical knowledge is shared; train new and existing team members
- Take part in planning and assist the Product Owner in breaking down the deliverables in to detailed plans
- Escalate issues or risks in order to guarantee the deliverables
- Make sure that agile principles are followed and drive process improvement
Requirements
- At least 3+ years of experience as a Java software developer, in an Agile environment
- Experience in building web application using Java technologies and common architectural patterns
- Good algorithms skills and pattern thinking
- JEE technologies, REST, Unit testing, Test Driven Development
- Ajax & JavaScript libraries (jQuery, ExtJS, etc), HTML, CSS Layouts
- Experience with both SQL and NO SQL databases
- Spring, Hibernate, SQL dialects and relational databases
- Java Certification (Sun, Brainbench) is a plus Ability to work independently and as a part of a team
- Can take ownership of tasks
- Passion to design and code
- Quality oriented
The company
Our partner allows companies to optimize their customers’ experience across the entire buyer journey. Through its web content management, analytics, social intelligence, campaign management and translation services, the company helps organizations leverage data-driven insights to understand what their customers want, orchestrate relevant content and communications, and deliver engaging and contextual experiences across languages, cultures, channels and devices. Our client has over 1,500 enterprise customers, over 400 partners and a global infrastructure of 70 offices in 38 countries. We also work with 72 of the top 100 global brands.