Key Accountabilities:
• Development of new features and functionality for company products and services, including the production of unit tests as and where required
• Active participant in reviews for products and services delivered across the wider company team
• Ensuring code quality is maintained for products and services delivered by the team the Senior Software Engineer is working with
• Ensuring that products and services adhere to agreed performance KPIs and are delivered in line with company pipeline requirements
• Ensuring that all products and services have agreed levels of test coverage, in line with company requirements and adhering to agreed architectural and technology (including security) standards
• Review of detailed release documentation for handover to “BAU” teams
• Maintenance of relevant technical sections of the internal Knowledge Base
• Mentorship of less experienced Software Engineers
Key Responsibilities:
• Active understanding of solutions architecture and design, including KPI definition
• Ability to input into high level estimates of software deliverables for planning purposes
• Supporting the Development Manager, Senior Software Engineer and Head of Operational Excellence to ensure continuous quality improvement in the development teams
• Proactively identify and address areas of material improvement, notably around performance, security and scalability
• Where applicable, ensuring that development team processes are aligned with technical processes prevalent in the wider company
• Ensure that all team members have a clear understanding of the overall system architecture and design components, in the context of meeting product requirements
• Knowledge of Agile development processes and scrum roles and responsibilities
• On occasion, lead an Agile workstream
Knowledge & Experience:
• A Bachelor's degree (1st or 2:1) in a traditional science subject, ideally computer science, engineering or information systems from a well regarded university
• At least 4+ years of experience developing commercial Enterprise Python applications
• Ideally 2+ years of demonstrable experience in designing distributed, high-volume, highly available, complex transactional systems
• Ability to document technical solutions in a variety of formats and to constructively share knowledge with less experienced team members
• Ability to learn and critique new technologies quickly
• Excellent verbal and written communication skills, including presentations to peer groups
• Excellent teamwork skills, capable of supervising a small sub team or deputising in a management role
• Demonstrably being able to deal with change on a daily basis; must be comfortable both with external factors driving this change as well as internal
• Experience in contributing to and influencing technical strategic planning or responsibility for a technical strategy
Technical skills of relevance:
• Mandatory
o A minimum of 4 years’ hands-on experience in designing and developing applications using Python / Django, using UNIX / Linux
o Some hands-on experience in designing applications using the actor model
o Knowledge of Relational Databases
o Demonstrable experience with TDD and / or BDD
o General understanding of the use of Docker, Ansible, Maven, Jenkins, Sonar and Git (BitBucket)
o Demonstrable experience in developing large distributed systems and concepts such as caching, sharding, consistent hashing, interprocess communications and brokering
• Preferred
o Experience in another popular web framework (JSF, Drupal, GWT, Spring MVC etc.)
o Hands-on experience in developing microservices using at least one popular framework (Netflix OSS, Spring Cloud, Play etc.)
o Some hands-on experience in designing distributed systems using a central ‘broker’ (such as Kafka or potentially an ESB)
o Some experience in Domain Driven Design, the actor model, event-sourcing and CQRS
o General scripting skills: Bash, Perl, Javascript etc.
o Domain knowledge is not required, but having worked on major eCommerce or any significant widely distributed system is
We offer:
• Competitive salary and compensation package
• Friendly and professional team
• Career and professional growth
• Great international working environment
• Low hierarchy and open communication
Jesteśmy niezależnym ekspertem w takich dziedzinach jak wyszukiwanie, re... Rozwiń
Czy chcesz otrzymywać oferty pracy na podobne stanowiska?
Utwórz powiadomienie e-mailZapisani kandydaci otrzymują informacje jako pierwsi.