Staff Golang Engineer (Remote)

Location United Kingdom
Discipline: Fintech, Blockchain, Crypto , NFT, Software Engineering
Job type: Permanent
Salary: ££150,000 +
Contact name: Ryan Craven
Contact email: ryan@enertek-group.com
Published: over 1 year ago
Startdate: ASAP

​We Are Hiring!

About this role

As a Golang Staff Engineer, you will be part of a dynamic team with engineers of all experience levels who help each other build and grow technical and leadership skills while creating, deploying, and supporting production applications. In addition, Staff Software Engineers will assist in product and tool selection, configuration, security, resilience, performance tuning and production monitoring.

You will have the ability to provide technical thought leadership, technical guidance and validation while also working hands-on within a team, either taking a lead in the design and development of services or parachuting into a team to substantially boast the team’s capacity.

You’ll be using the most current technologies and best practices to accomplish our goals. Our typical day involves the creation of new end to end systems, building advanced architectures, creation of new features, development of fast and reliable automated testing systems and working in a culture that is always looking to improve our quality, tools, and efficiency.

Responsibilities

  • Lead significant projects and define technical specifications and development requirements that result in high performing technology

  • Lead technical decision making and architecture

  • Document the systems you help architect, build, and maintain

  • Write, review, and maintain code primary in and Go: development of features and prototypes/spikes.

  • Work with Product Managers to estimate task complexity and completion effort.

  • Maintain and improve APIs used internally and externally by developers

  • Coordinate with Product, Design, Support, and other Engineering teams to maintain a backlog of priorities

  • Communicate difficult concepts and lead teams through design and interpretation

  • Mentor other engineers in their technical and architectural decision making

  • Notes gaps on the team and provides suggestions for changes to make the team more productive

  • Improve the scalability and performance of our platform

Requirements

  • Experience with API development using API First design principles.

  • Passionate about fostering good engineering practices and processes

  • Solid knowledge of testing principles

  • Computer Science degree or equivalent industry experience

  • 5 years+ experience in software development including minimum 2 years Golang

  • Proven experience with producing production-ready and highly scalable applications

  • Excellent knowledge in Linux shell, scripting and popular CI/CD tools

  • Excellent knowledge of Docker and Git

  • Experience with SQL (Postgres), NoSQL and distributed databases

  • Experience with microservices (µS) architecture, message queues and fast k/v stores (Redis)

  • Excellent knowledge of HTTP protocol internals, Websockets and RestAPI principles

  • Knowledge of Domain Driven Design (DDD), Event Driven Architectures (EDA) and Hexagonal architecture would be beneficial.

  • Experience of distributed data consistency, DLQ’s, SAGA orchestration and Inbox, Outbox patterns.

  • BDD Testing experience is also a plus.

  • Rust, C/C++, Python is a plus

  • Good teamwork and communication skills

  • Excellent command of the English

Benefits

  • Competitive salary

  • International work environment

  • Great career development opportunities in a growing company

  • Possibility for relocation and international transfers