1 day ago
London, United KingdomSenior

Responsibilities

  • Analyze business requirements and create application designs and technical specifications.
  • Develop software according to project plans and contribute to solution design, estimation, planning, and task management.
  • Conduct peer reviews, mentor colleagues, and provide technical advice, guidance, support, and training.
  • Install, configure, and test software releases in development environments and support QA and operations teams.
  • Investigate and resolve production incidents and problems as part of third-line support and an out-of-hours rota.
  • Apply automated builds, automated testing, static code analysis, automated deployments, and other DevSecOps practices.
  • Design and develop distributed systems, data-streaming integrations, and highly available services.
  • Contribute to release planning, knowledge repositories, deployment standards, and continuous improvements to engineering productivity.

Requirements

  • At least 5 years of software development experience in an IT organization.
  • Strong hands-on software development background, preferably with JVM-based languages such as Java, Scala, or Kotlin.
  • Good experience with the Microsoft software development stack, including .NET and SQL Server.
  • Good experience with Python frameworks such as Django, Flask, and Pandas.
  • Experience with application development, automated testing, release planning, and team working practices.
  • Experience creating and maintaining complex design documentation and knowledge bases.
  • Experience operating highly available services and working with distributed systems, consistent hashing, distributed locking, checkpointing, and load balancing.
  • Knowledge of object-oriented design, design patterns, modularization, functional decomposition, microservices, and system implementation.
  • Experience with BDD, TDD, unit, mock, functional, integration, and automated testing.
  • Working knowledge of MapReduce, Kafka, or other big data processing platforms and data-streaming standards and design patterns.
  • Experience designing and developing Kafka integrations, including topics, producers, consumers, and streaming applications, is beneficial.
  • Experience with Dollar Universe is beneficial.
  • Ability to work independently and collaboratively, mentor peers, and review designs and code implementations.
  • Education to degree level, preferably a bachelor's or master's degree in computer science, computer engineering, or another technical discipline, is desirable.

Benefits

  • Permanent position based in London, United Kingdom.
  • Standard 40-hour work week with scheduled weekly hours of 40.
  • Participation in an out-of-hours production support rota.

Tech Stack

Apache KafkaDjangoFlaskJavaKotlinMicrosoft SQL Server.NETPandasPythonScala

Categories

Contact me