Java Architect - DI
809

Java Architect

Perks
  • Flexible Working
  • Paid Vacation
  • Relocation

We have an exciting opportunity for the experienced Java Architect to join our team on modern e-commerce platform development, with relocation to UK.

We are looking for motivated, proactive Java Architect, who is willing to deal with new technologies, working in a challenging and fast-paced environment. We expect the person, who will be able to establish architecture, recommend best practices and take responsibility for their realization. Also, this person should be a consultant for customers and great support for development teams.

Requirements:

  • 7 years of experience in the industry of software development
  • At least 5 years of experience as a software developer on web projects
  • Professional experience with Java, last period of experience with Java 8
  • Good Knowledge and practical experience of Spring IoC (Core/Beans/Context)
  • Good knowledge REST/SOAP services (e.g. JAX-RS or JAX-WS)
  • JUnit
  • Spring Boot, Spring MVC, Spring Security
  • Knowledge of modern front-end technologies

 

Optional:

  • Previous development of back end architecture
  • Previous Tech Lead experience
  • React/Redux
  • Graphql
  • Apache Kafka & Kafka Streams
  • Scala

Main Responsibilities:

  • Recommend changes on project design concepts to improve efficiency;
  • Develop design specifications and other system-related information;
  • Verify stability, interoperability, portability, security, and scalability of Java system architecture;
  • Select apt design solutions and ensure the compatibility of system components working with software engineers;
  • Provide technical guidance and support development of systems;
  • Identify system data, hardware and software components required to meet user needs;
  • Convey architectural solutions to all levels of professionals and leaders;
  • Ensure compliance with established architecture, design patterns, policies, standards and best practices;
  • Design, develop, implement and maintain a series of programs, subsystem, revision and enhancement of the current system.