Scala Software Engineer

We are a dynamic, hyper growth company looking for smart, creative, hard-working people with integrity to join them. We are looking for an experienced Scala software engineer to work for us remotely as we develop our next generation platform for travelers. This is an ongoing project and the initial phase is expected to be completed in about 6-8 weeks maximum including testing and bug fixing. You will be required to work a minimum of 8 hours/day initially. There will be ongoing support/enhancement work once the project is finished. You will be provided with a detailed spec detailing inputs, outputs and all the validation rules. The base project has already been setup – you will just have to write API’s as directed.

Please ensure that you meet the above criteria before you submit your response. Please respond back with your portfolio, customer references and any other links etc. that demonstrate your past projects. Please note that you will be required to signed a non disclosure agreement before we disclose the details to you.

 

Responsibilities:

Your tasks will include:

1. Write API’s using Scala and Akka actor framework.
2. The API’s must adhere to JSON API standard and must use JWT for authentication. This has already been implemented you will just re-use existing pattern.
3. The authentication/authorisation API’s will require integration Facebook, Twitter, LinkedIn, WeChat and Weibo – any experience in such integration is highly desirable.
4. Write unit and integration tests. No code will be accepted without Unit tests.

5. Work closely with the front end developers to iron out any integration issues.


Required Skills

1. Must have at least 3-5 years of experience in writing functional code with Scala and Akka.
2. Must have solid understanding of the actor model, asynchronous design and reactive architectures.
3. Must have good understanding of typical patterns used with Actor models.
4. Must have good understanding of typed actors, fault tolerance and distributed actor architectures.
5. Must have experience with Akka remoting


Candidate Requirements

Tech Stack:

·        Scala

·        Akka Actors

·        Postgres

·        Experience with Kafka will be highly desirable

·        Amazon Web Services, ECS and RDS

·        Git

 

Experience:

·        3-5 years of experience in writing robust, efficient production code

·        Experience with Postgres database

·        Experience with development in a Linux/Mac environment

·        A degree in Computer Science or Information Technology

·        Proficiency in Scala and functional programming.

·        Proficiency in using advanced Scala features such as Macros, Traits etc effectively