Overview

EVRYTHNG is the Internet of Things Smart Products Platform that connects any consumer product to the Web, and manages real-time data to drive applications. The world’s leading consumer product manufacturers work with EVRYTHNG to manage billions of intelligent online identities in the cloud for their products, deliver real-time interactive experiences and support services to consumers, and connect with the ecosystem of other applications and products in their digital lives.

Job purpose:

We are looking for an experienced and ambitious Java Lead Engineer with a background in large-scale web applications, robust data-stores and distributed systems.

Key Responsibilities:

As a Java Lead Engineer you will be responsible for building Java applications on top of our IoT Platform. Your primary responsibility will be to design and develop these applications, and to drive / coordinate the rest of the team working on different layers of the platform. Thus, a commitment to collaborative problem solving, sophisticated design, and product quality is essential.

  • Is proactive to analyse current processes and practices and suggest/drive improvements for the Java team and its technologies
  • Helps with the overall quality of Java deliverables across all areas, both functional and nonfunctional including performance, security, usability, disaster recovery, compatibility and supportability.
  • Provides leadership and strategic direction for the Java team
  • Provides visibility and communication to the CTO and Director of Software Delivery and shows evidence how this is supporting business goals.
  • Has a big and complete picture view of the application, company goals and ensures the Java strategy and processes is aligned to support this.
  • Ability to define and set goals for the team. Basically, KPI’s which improve quality of software and how our components are being used by external customers.
  • Collaborates well with team members and can “influence team members” from a non direct report or management role.
  • Keeping up-to-date the latest tools, technologies and the industry. Constantly learning and wants to improve.
  • Shows maturity, accountability and shows pro-active behaviour and demonstrates this.
  • Shows a high degree of accountability, commitment and responsibility.
  • Works closely with the Product team to understand functional requirements and acceptance criteria to ensure the build of a quality product.
  • Ensure stories reach the definition of ready during sprint planning and tasks clear for the team.
  • Leading the development of our Java components at each stage of the iteration build cycle to get to the definition of done.
  • Supports the development of standards/tools/techniques.
  • Work with product and design team to foster better quality of the product.
  • Works closely with the scrum team, particularly testers, NodeJS and Front-End developers to ensure that quality code can be released into live on a regular cycle.

Requirements:

  • Experience in the implementation of microservice architectures
  • Strong proficiency with Java, 5+ years experience
  • High availability, low latency systems
  • Experience with NoSQL datastores (ideally MongoDB)
  • Test first, deliver value focused
  • Amazon AWS hosted applications
  • Strong algorithmic/data structures skills
  • You have experience with distributed Java apps deployed to Web servers (Jetty, Netty, etc.)
  • Experience working with RESTful architecture in the Java (JAX-RS, Jersey, etc.)
  • Previous experience of splitting one central Core JAVA application into smaller, independent micro-services.
  • Big Data experience will be valuable
  • Versatile ( Scala, NodeJS or any other language will be beneficial )
  • Internet of Things – Production or as a hobbyist
  • Enterprise security knowledge
  • Understanding accessibility and security compliance
  • User authentication and authorization between multiple systems, servers, and environments
  • Integration of multiple data sources and databases into one system
  • Understanding fundamental design principles behind a scalable application
  • Understanding differences between multiple delivery platforms, such as mobile vs. desktop, and optimizing output to match the specific platform
  • Creating database schemas that represent and support business processes
  • Implementing automated testing platforms and unit tests
  • Proficient understanding of code versioning tools, such as Git
  • Experience working within cloud-based/SaaS environments
  • Degree educated (BA/BS)

Benefits:

EVRYTHNG offers a competitive salary, high earning potential and the ability to experience a high growth startup operating in the most exciting business environment around. This is not a role for a passenger but a challenging and rewarding role for a high potential candidate who wants to make a huge leap in their personal and professional development.

Tagged as: AWS, IOT, Java, MongoDB, REST