Team Extension Company Profile

Senior Backend Engineer

Team Extension

Job Description

One of our best clients from Ireland, Dublin is looking to expand their team - do not hesitate to apply and we will contact you shorly :)

Summary of the position:

You are an experienced Software Engineer who has delivered complex enterprise applications on the JVM, having built high confidence in your software through a flow offrequent delivery of small batches of work to customers, instrumenting for feedback at all stages in your delivery lifecycle to create ever safer systems of work, taking a scientificapproach to learning and experimentation to improve your products and delivery capabilities.You will be joining a small cross-functional agile team for maternity cover delivering new features and enhancements to one of our products.You will be working alongside talented product managers, software engineers, UX designers and our site reliability engineering team. You will be mentoring and coaching more junior members of your team and will be contributing at the highest level to our software’s design and architecture. You will be responsible for coding, test automation, software configuration as well as helping to facilitate improvements to our ways of working and Software Engineering capabilities.

Job Responsibilities:

Our software is primarily built on the JVM and exposes rich RESTful APIs that are consumed by our native mobile clients, our single page web apps and airlines. The backend technologies include Spring-Boot and much of the Spring stack interacting with datastores like MySQL, MongoDB, Redis and Elasticsearch. We build, automate, and deploy with Gradle, Gulp, Ansible, Docker. We have supporting tools written in Python, Bash and Groovy. As a Senior Software Engineer, you inform our tool choices. We believe when teams can decide which tools they use, it contributes to software delivery performance.

  • Enterprise application development on the Spring stack.
  • Writing software in Java, Groovy or Kotlin dependent on code base.
  • Writing unit tests for complex business logic.
  • Writing acceptance tests for all new or behaviour updates to RESTful APIs.
  • Contributing to our shared DevOps culture by improving our CI/CD pipelines.
  • Opportunities to work on full stack (native & backend) development.
  • Contributing to our design and software development lifecycles.
  • Performing code reviews or pair programming.

Requirements:

  • A degree in Computer Science, Software Engineering or related field or equivalentpractical hands-on experience
  • Extensive professional experience as a Senior Backend Engineer in a related job using an Agile software lifecycle including TDD, pair programming, short release cycles.
  • Experience with at least one automation focused scripting language
  • Expert knowledge of Java, OO, unit testing, enterprise design patterns
  • Experience working on a distributed cloud-based architecture.
  • Experience designing and developing RESTful APIs.
  • Experience with dependency injection frameworks e.g., Spring, Guice
  • Experience with build technologies e.g., Gradle, Maven
  • Java application server experience

Preferences:

  • Full stack web development with a modern web framework
  • Deployment and configuration management tools like Docker, Ansible
  • Automation Testing: Junit, Gatling.
  • Focus is on Java, but interested in learning new languages such as Groovy, Kotlin,
    Javascript, Python