Software Engineer

Job description

  • Design software architecture of our distributed backend system to meet the challenging functional, scalability and reliability requirements for our fast-growing business.
  • Write clean, reusable, testable, and maintainable code.
  • Work autonomously to solve challenging technical problems from start to finish
  • Provide technical leadership, driving and performing for fellow junior team members

Job requirements

  • Experience in multi-tiered distributed systems, web services, APIs, and relational & NoSQL databases
  • Extensive backend programming experience in one or more of the following: C#, Go, Python
  • Ability to: effectively articulate technical challenges and solutions; deal with loosely defined problems and fast changing requirements & think abstractly.
  • A solid foundation in computer science, with strong competencies in data structures, algorithms and software design.
  • Experience in Microservices architecture, RabbitMQ, Redis, ElasticSearch is a big plus