Position: Senior Go Engineer
Company: EPAM
Experience required: 3y
English level: intermediate

PROJECT DESCRIPTION

Our Operations engineering group has an opening for a passionate and pragmatic software engineer with a DevOps mindset to join a hardworking team to experience all the good things Expedia has to offer.

What you’ll do…

As a Software Engineer, you will be working in a dynamic environment where your primary focus is to design and develop first class operational capabilities used by front line operations teams to resolve incidents that occur throughout the organisation.

We offer you an environment where you get to work alongside a group of extremely passionate and talented individuals to help us eliminate toil and resolve incidents through automation and tooling. 

We predominantly write code in Python and Go. 

An important part of your role will be to mentor individuals within the team and lift the team as a whole by refining the way we develop and think about software.

You'll be responsible for:

Collaborating with peers to design and implement new operational capabilities as well as improving existing toolset
Design and build software by writing clean and thoroughly tested code
Work in a polyglot environment where Python and Golang are the preference of choice
Mentoring and supporting the team by reinforcing XP practices such as Test Driven Development, pair programming, refactoring and CI/CD
Present technical solutions, problem areas, proof of concepts to the team or wider audience
Participate in cross team coordinated development activities
Assume some operational support duties around systems and tooling we own

Who you are…

You are an experienced engineer equipped with solid design and development skills who feels comfortable working in an environment centered around containerisation technologies, continuous delivery and cloud native. You share our passion and mindset around software as a craft at the same time as you share the mentality of “you built it, you run it”. We don't believe in skill matching against a list of buzzwords because great developers can learn new technologies quickly and effectively. However we believe a strong software engineer should bring a wealth of knowledge and experience to the following areas:

You are an excellent coder in languages such as Go and Python
You are comfortable working in a Test Driven Development environment and truly understand its value proposition
You are comfortable with code reviews, pair programming and participating in technical forums in a collaborative environment
In depth understanding of principles and best practices around code quality, clean code and design
You live and breathe automation and have a firm grasp of Continuous Delivery and Deployment principals and techniques
You have had significant exposure to Docker or other containerisation technologies
Feel comfortable using the basic building blocks of Amazon AWS or exposure to other Cloud providers
Embraces simplicity and evolutionary design over convoluted and heavy top down design solutions
Feel comfortable in mentoring and supporting peers
You have good interpersonal skills and a willingness to work across teams
Feel at ease presenting to technical as well as non-technical teams
You possess a good understanding of DevOps and Agile methodologies and concepts.