Backend Engineer (Golang) (remote)

Job description

As a Senior Software Engineer, you will share your passion for hands-on Software Engineering with the other members of the cross-functional Agile team and promote our shared values of Courage, Integrity, and Collaboration.

You will be a champion of DevSecOps culture, sharing your skills and experience of good software engineering practices, architecture patterns, and open-source CI/CD tools with the team. From problem-solving to new concept ideas, you’ll apply your creative potential on a variety of software engineering challenges that will stretch you while ensuring you are constantly learning.

Your responsibilities

  • Write high quality, elegant, effective code
  • Share your learnings with the team from keeping up to date with industry trends and technology developments
  • Collaborate with the Scrum Master, Developer in Test and Product Owners on story refinement and prioritisation
  • Ensure code committed meets the definition of done
  • Identify and share relevant architectural patterns
  • Coach the team in the avoidance of anti-patterns
  • Lead by example in the use of test automation
  • Ensure the team keep the CI/CD pipeline green
  • Ensure all code deployed to the trunk is in a shippable state
  • Perform code reviews for security, accuracy, and functionality
  • Create a culture of metrics and data to drive continuous improvement
  • Provide operational support for your products
  • Ensure the team meets its commitments and goal for each sprint, delivering high-quality code into production
  • Coach the team in the practice of continual code quality improvement
  • Ensure relevant regulatory and compliance goals are met
  • Work closely with Infosec to ensure Security ‘shifts left’
  • Collaborate closely with the Operations team, promoting a DevOps culture
  • Fully document all integrations in English

Job requirements

You are/have;

  • Highly experienced in developing in GoLang (5 years+)
  • Experience of relevant frameworks like Martini and Revel
  • Highly experienced in the use of Agile practices
  • Experience of working in an organization with a DevOps culture
  • Practical experience of working in Scrum and Kanban teams across multiple geographies and timezones
  • Track record of successfully designing and implementing loosely coupled micro-services architectures
  • Experience of working in a cloud-native environment
  • Highly experienced in the writing and interfacing with REST API’s and Webhooks
  • Practical knowledge of CI/CD pipeline tools like Git, Jenkins, Ansible, Terraform, Cucumber, Selenium
  • Knowledge of AWS design patterns
  • Experience of the ELK stack
  • Practical use of Jira and confluence
  • Experience in writing automated tests (unit & integration)
  • Security awareness in a software engineering context
  • Hands-on MySQL and NoSQL experience
  • Experience with Docker & Kubernetes
  • Experience with event streaming architectures and tools like Kafka

Nice to haves and soft skills;

  • Incorporating telemetry at the code level with libraries like Prometheus
  • Experience in using SonarQube, Gemnasium, and Gauntlt
  • Experience of AppDynamics or similar
  • Experience in dashboard visualization
  • Experience in Test-Driven Development
  • Demonstrable contribution to open source projects
  • Excellent interpersonal skills,
  • Learner for life, self-motivated, self-purposed, self-starter,
  • Good command of written and verbal English; we expect you to participate in conversations with international clients over Zoom, Slack, etc.

Please note that we'll ask you to develop a sample project for us (should not take more than 10-12 hours, we respect your time) as a part of the interview unless you are a regular contributor to open-source projects.