Java Application Architect

London (Greater)
£60000 - £70000 per annum + corporate benefits
17 Jan 2014
14 Feb 2014
BBBH10629
Steve Winter
IT
Permanent
Full Time

Do you want to create highly scalable globally distributed applications using leading edge technology in a friendly geeky environment?

World's leading source of intelligent information for businesses and professionals is now looking for an Application Architect to work with a large talented Java team. Based in over 100 countries with well over 55,000 staff they combine industry expertise with innovative technology to deliver critical information to leading decision makers in the financial, legal, tax and accounting, scientific, healthcare and media markets, powered by the world's most trusted news organization.

As a Java experienced Application Architect you will take a lead role in designing and implementing all current and future solutions over multiple projects in an extremely busy and highly visible role. We are working on a wide variety of groundbreaking applications using Java (Spring/Hibernate), Node.js, RabbitMQ, SOLR, ElasticSearch and socket.io with a JavaScript single page User Interface (dojo, LESS, node.js and promised-based architectures). To support our development we already use multiple standard industry tools like GitHub, Maven, Jenkins, Cucumber, Vagrant, and are always interested in other tools that we feel will help us engineer better products that we can be proud of. You should live the DRY and KISS principles and believe that code can be beautiful. We are mad about automated testing and good clean code (think Joshua Bloch for Java and Addi Osmani/Nicholas Zakas for JavaScript).

We also score very highly on the Joel scale*. Some of our devs are regulars in the London tech meetup scene and can often be found talking about design patterns for large JavaScript applications - for fun.

Application Architects are embedded into all of our product delivery teams and are key to ensuring that our engineering efforts are effective. They role is vital to the process of making the organisations ideas into reality and favors people who are just as happy discussing performance characteristics with enterprise architects as they are discussing implementation details or acceptance criteria with engineers.

We are a global business dedicated to providing information and insight on Governance, Risk and Compliance to the legal, compliance, operations and audit professionals who work together to manage business risk. Through a suite of products, the business helps banks, hedge funds, insurance firms, general companies and their legal and professional service advisors connect strategy, operations and products to the rapidly changing regulatory environment.

About the Role

This is an opportunity for a driven and innovative Application Architect to play a leadership role in designing and building the next generation products and platforms. We are seeking an Application Architect with a strong technical Java background and experience designing and building high-throughput, scalable, globally distributed solutions.

The successful Application Architect will be part of our Java Technology team in GRC. The team is responsible for introducing best practices and craftsmanship and works closely with our Development, Operations and Product team, as well as with other GRC business segments to prioritize product strategy, develop roadmaps, and create development processes.

ESSENTIAL FUNCTIONS AND RESPONSIBILITIES:

  • Define and articulate the application design and architecture required to support business initiatives and product strategy. Covering new development and enhancement to existing products and software tools.
  • Understand the interactions between all components that make up Governance, Risk and Compliance segment.
  • Help map out the work breakdown structure and deliverables for new projects and software developments.
  • Input into resource planning and provide effort estimates.
  • Understand the interaction between the product components and the operational monitoring and maintenance capabilities.
  • Direct the implementation and evolution of the appropriate architecture/design choices and maintain consistency in your functional development groups to ensure that the product meets its objectives in terms of functionality, scalability, robustness and high availability.
  • Act as technical advisor and participate on development projects, leading, directing, and implementing solutions in partnership with development managers and teams.
  • Help define technology standards to promote creation of flexible customer oriented solutions and help technical teams evolve solutions towards enterprise standards.
  • Assist product management in developing integration and migration strategies for clients.

Essential Day-to-Day Responsibilities:

  • Liaison with product management, technical operations, project managers, customer support, development, content technology, and security owner to establish requirements and produce cost effective, scalable architectures and designs to meet business requirements.
  • Work with development teams to ensure cost effective delivery of projects and to review technical deliverables.
  • Be familiar with network and database technologies in order to work with specialists to develop implementations.
  • Work with other GRC architects to understand overall architecture and associated documentation for specific projects/products.
  • Help produce and maintain GRC architectural documents, technical briefings, presentations, FAQs, etc. suitable for internal and external clients.
  • Create models and assess alternative approaches.
  • Day to day interaction with project champions and other stakeholders, including product manager, project managers, quality assurance, technical support, software developers and globally-based program management and software development groups.
  • Participate in periodic (daily or weekly) review meetings
  • Design and review code with a view to helping engineers constantly improve and setting correct expectations with other disciplines.

QUALIFICATIONS

Required Skills:

  • Significant proven experience in a Tech Lead role in a commercial environment.
  • Bachelors or Masters degree in Computer Science or closely related discipline; or equivalent combination of education and experience.
  • Overall technical responsibility of the projects assigned; oversee design, implementation, testing and debugging of software according to schedules
  • Familiarity with web based SaaS and installed applications
  • Significant architectural knowledge including EIP patterns
  • Equally at home working in a team and alone.
  • Experience working across multiple platforms and technologies
  • Ability to transform functional/business requirements into appropriate Technical Design document.
  • Excellent verbal and written communication skills, able to explain and document the enterprise data architecture to diverse audiences (technical, business, etc.) and at varying technical levels within GRC.
  • Comfortable with absorbing new technologies quickly; highly self-directed and able to manage and prioritize multiple concurrent, and competing or conflicting challenges
  • Strong planning, organization, project management and time management skills
  • Strong analytical and influencing skills
  • Innovator; ability to work collaboratively and a demonstrated team player with a results-oriented track record
  • Capable of providing thought leadership and abstract thinking
  • Business aware (needs to ensure architecture provides an appropriate balance between cost and capability)
  • Track record of superior performance
  • Troubleshoot problems and implement appropriate solutions to problems; immediately raise issues or risks to the successful and timely completion of deliverables to the Project Manager or immediate supervisor
  • Follow recommended software development methodology standards
  • Pro-active customer service attitude
  • Oversee support and maintenance of production programs and data feeds outside normal business hours
  • Occasionally travel (domestic and internationally) to other on project business


Desired Skills:

  • Java 6 & 7
  • Spring Framework, Spring Security, Spring Batch, Spring Integration, Spring Data, Hibernate
  • Messaging: JMS, AMQP
  • Databases Oracle, MySQL and Postgres Comfortable writing SQL queries; SQL Server stack experience a plus
  • Experience with structured and unstructured textual content and natural language and Boolean search technologies such as: Solr, ElasticSearch
  • Experience with XML, XPATH, XSLT
  • Versed in service specific standards such as SOAP, REST, JSON, etc.
  • Tools such as Maven, Subversion, Git, Jenkins, Sonar, Jira, IntelliJ
  • Tomcat 7
  • OS Linux, UNIX, Mac OS X, Windows a plus
  • Familiarity with relational, XML, and network graph based data structures and exchange protocols
  • Familiarity with distributed authentication systems an Identity Federation (e.g. SAML, WS-Federation)
  • Tolerant of ambiguity, willing to seek multiple solutions
  • Ability to pick up and run with new languages, frameworks or APIs.
  • Confident, careful and efficient approach to engineering.