Senior Enterprise Java Developer
Location: GB, CMD, London
Department: Technology
Salary range: 35000-45000
Employment type: Full-time
Required experience: Mid-Senior level
Required education: Bachelor's Degree
Industry: Marketing and Advertising
Function: Engineering

Company profile:
The Technical Team and offering at VML London has a very strong heritage dating back to the mid-nineties when the London office was founded. Back in those days we were one of the first few purely digital marketing agencies in London; and back then things were a lot more technically driven than they often are today; as such the Technology team here continues to enjoy a strong strategic influence on the work that the agency undertakes and the clients that we engage.It just works.Technology is brilliant when you don’t have to think about it. That’s what we strive for in our solutions. Our technology team has a strong strategic influence on the work we undertake and are involved as soon as the brief lands. They stay involved throughout strategy, creative concepting and design. Acting as important enablers, we bring new and emerging technology to the table to successfully marry the requirements of our clients with the vision of our creatives.Open standards, open minds.We aim to deliver the most elegant technical solution for your budget, and maintain a technology agnostic approach to development in order to achieve that. Technology can be expensive, both in terms of hard costs and costly mistakes, so we’re as careful with your money as we are with our own.   Perhaps that’s why some of our clients have been with us for over 10 years. When faced with a new problem our first instinct is always to see if someone else has already solved it. As such, the solutions we design are built on the rich eco-system of open source software (OSS); the proven and battle-tested kind that we know will not just do the job quickly and cost-effectively, but also robustly. Where OSS isn't appropriate we always favour solutions that are built to open standards that we know will integrate well with other technologies.Strong partnerships.Our work is complemented by strong partnerships with technology vendors and suppliers.   Proven over time, our established strategic relationships with many of the leaders in software, hardware and other technology solutions help ensure we’re able to continue to offer best-in-class technical solutions for our clients.What we do:High availability and high performance website architecture &amp; developmentWeb content management solutionsCreative technology ideationContent optimisation, search and analyticsHigh volume, multi-locale email campaignsMobile optimisationLocalisation

Job description:
As Senior Java Enterprise Developer you will have an excellent understanding of how to build modern web applications including high availability CMS driven sites with thousands of pages, campaign specific microsites including Facebook apps, RESTful or SOAP web services. In some instances the Senior Java Enterprise Developer will act as the technical lead on smaller projects. Working closely with client side developers, project managers and in many cases the clients themselves in order to achieve successful results, the right candidate will have a good knowledge of Java development best practices such as JUnit based Test Driven Development.

Requirements:
5+ years experience as a Java Enterprise developerBuilding web applications using MVC frameworks such as Struts and SpringExperience creating specifications using technologies such as XML Schema and WSDLConfiguration of Apache Web Server, Tomcat and associated LAMP stack skills such as Linux command line, MySQL configuration and SQL commandsTDD, Unit Testing and the use of code coverage metrics, with JunitAgile development methodology experienceExcellent communication skills, ideally gained in a fast-moving media environmentContributing to technical documentation including estimates, technical solutions, requirements specifications and test plansConfiguration Management, using SVN or GitExcellent at communicating concepts, risks and ideasUnderstanding of architectural concepts including performance and capacity planning, network/infrastructure planning, security architecture, and systems integrationExperience of whole project lifecycle. Able to estimate and execute tasks throughout the lifecycle including architecture, design, and developmentLinux and Windows operating systemsBSc in Computer Science or equivalent degreeBuild management using Ant or Maven2Useful extra knowledge and skills:Adobe CQ5 or similar JCR based CMS with JSP templating exposureExperience with a Java Bean mapper such as DozerApache CXFJavaScript including jQuery and MVC frameworks such as Backbone or AngularOne or more other server side languages e.g. PHP, Python, Ruby, #URL_c5591c960537d84ff7889f414633cdbc8e7d36f3fe042a096d374e4e058388d5# (C#)Building secure personally identifying data storage and PCI compliant systemsPerformance testing using JMeterKey responsibilities:Being responsible for technical delivery of portions of the project, or in the case of microsite projects, responsible for the complete server side buildEnsuring that knowledge gained is always shared outwards to the teams and the company as a wholeEnsuring your own work is delivered to high standards of quality in all aspects including, but not limited to code, documentation, configuration management and other software engineering best practices as applicable Challenges of the roleCoping with multiple, sometimes overlapping work streamsClearly communicating scope and risks to both the project management functions and the creative functionsBleeding edge technology changes requires a constant appetite for learning and improving Key relationships:Technical DirectorThe Java Enterprise Developer needs to communicate regularly with the Technical Director to report project progress, discuss changes and improvements to working practices and strategy for the technical team’s development.Project ManagerThe Project Manager is responsible for the success of a project, and as such requires regular updates from development teams working on their projects. The Java Enterprise Developer will participate in daily standups and contribute to project estimating and progress reporting.

Benefits: