We’re in search of a Back-End Software Engineer that specializes in server-side components. In this role, you’ll primarily bring a depth of knowledge on basic algorithms and data structures. As a Back-End Software Engineer, on any given day you might be architecting new features for our customers, refactoring existing code to be more scalable, and seeing changes through to completion in a live environment.

Responsibilities

  • Strong computer science fundamentals including data structures, algorithms, complexity analysis, object-oriented design, and distributed systems.
  • Design and create services and system architecture for your projects, and contribute and provide feedback to other team members.
  • Help improve our code quality through writing unit tests, automation, and performing code reviews.
  • Collaborate with a multidisciplinary team of Back-End Software Engineers, Project Managers, and System Administrators.
  • Participate in brainstorming sessions and contribute ideas to our technology, algorithms, and products.
  • Work with the product and design teams to understand end-user requirements, formulate use cases, and then translate that into a pragmatic and effective technical solution.
  • Dive into difficult problems and successfully deliver results on schedule.

 

Requirements

  • Proven experience as a backend engineer
  • Ability to work in a remote setup
  • Ability to independently own and deliver features from start to finish
  • Understand both how to write tests and the value of automated testing
  • Experience with all phases of the software development life cycle, best practices, and Agile Software Development.
  • Solid OOP and software design knowledge – you should know how to create software that’s extensible, reusable, and meets desired architectural objectives.
  • Experience with Java, Ruby, or Golang and the willingness to learn new technologies
  • Establish Back-End Software Engineer best practices
  • Experience with Linux/Unix and scripting languages like Python
  • Knowledge in database systems and NoSQL databases such as DynamoDB
  • Experience with CI/CD processes and tools (e.g. Jenkins)
  • Experience with containerization technologies (e.g. Docker)
  • Experience with AWS is a plus (e.g. ECS, EC2, S3, DynamoDB, etc…)

Apply for this Job

* Required