Software Engineering Manager (Java)
Location:Dnipro, Ukraine
Date Posted:June 19, 2019
1000 - 1500 EUR
Net/monthDescription
Our client provide best-in-class software solutions for the transport industry.
Based in West London they provide the UK’s largest freight exchanges to circa 5000 members and counting.
Responsibilities
• You will help us to migrate from a monolithic architecture to microservices
• Assist in architecting systems and applications
• Participate in regular retrospectives help surface what’s not working so we can fix it, and what we’re doing right so we can improve on it
• Coach, mentor and develop the engineers
• Conduct regular 1 to 1 sessions with developers
• Lead the creation, availability, resilience, and scalability of software solutions
• Continuously improve software engineering practices
• You will look over 4 different SCRUM teams
• Encourage innovation, implementation of cutting-edge technologies, inclusion, outside-of-thebox thinking, teamwork, self-organization, and diversity
• Managing performance and provide constructive feedback, helping the members of your team become the best they can
• Define your career path and embrace the opportunity to grow and learn
• Benefit from working in a multi-disciplinary team, that uses modern software and product development techniques, and values continuous improvement
• You will report to the Head of Technology
Requirements
• 10+ years of experience with Java
• Demonstrable experience of Java, its libraries and frameworks
• Knowledge of Git, JIRA, Confluence
• Experience with build automation tools like Maven and Gradle
• Experience in designing and implementing large-scale distributed systems
• Proven experience creating Docker containers
• Knowledge of Domain-Drive Design
• Solid knowledge of microservices oriented architectures
• Experience of building and/or working with RESTful services
• Knowledge of Relational Database Management Systems, especially PostgreSQL
• Solid knowledge of working in cloud based infrastructure, in particular AWS
• Understanding of Computer Science fundamentals like: Data Structures, Algorithms, Distributed Systems, and Information Retrieval
• Demonstrable knowledge of software patterns
• You are able to communicate clearly and accurately about technical topics (in English)
• Experience making business decisions or leading design and architectural conversations
• English professional working proficiency
• Demonstrable knowledge of professional software engineering best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
• Hands-on expertise in many disparate technologies, typically ranging from front-end user interfaces through to back-end systems and all points in between
• Proven leadership experience and/or demonstrable leadership ability in a technical environment
• Demonstrable ability to efficiently manage a large number of concurrent disparate projects, product features and activities
• You have worked in a Agile environment and you are aware about the Agile best practices
• Educated to degree-level or equivalent by experience in a relevant subject
You should apply if you have
What would be great to have...
• Experience building systems to perform real-time data processing using Apache Kafka, or similar technologies (Apache Flink, Apache Spark, Samza, etc.)
• Knowledge of the Scala programming language and the Akka framework
• Experience with NoSQL database is a plus
• Experience as an open source contributor and/or speaker
Benefits
What does company offer?
• The opportunity to be part of an international team
• You will be able to test and experiment with a lot of new stuff
• A unique chance to gain a ton of experience in a real environment, working with a leading British company