Scala Engineer

London, England, United Kingdom · Technology

Description

Scala Developer - Scala, Cats, Play, Akka, MySQL

We are Property Partner

Property Partner is a crowdfunding and investment platform that makes it possible for anyone to invest in residential property at the click of a button. Investors can buy shares in individual properties or residential blocks, for as little or as much as they like. Property Partner finds the tenants and professionally manages the properties. Investors receive rental income in proportion to the shares they own and, through our unique secondary market, can exit their investment at a time and price of their choosing.

Launched in January 2015, Property Partner has already attracted thousands of investors, and has been recognised by KPMG as one of the world’s top 50 emerging FinTech companies and have been recognized by the property industry (at the RESI Awards) as Best Newcomer of the Year 2016. Our ultimate goal is to create a global stock exchange for residential property.

Property Partner is regulated by the Financial Conduct Authority and financially backed by some of Europe’s leading investors. In March 2016, we successfully completed a ‘Series B’ funding round, taking the total amount invested in the company to £22.5m. Our backers include Index Ventures (backers of Funding Circle), Octopus Ventures (backers of Zoopla), Dawn Capital (backers of iZettle) and Seedcamp (backers of Transferwise).

We want to work with people who share our values and vision for building the best property stock exchange in the world. Our values are captured in 3 words, Discover, True, and Difference.


Our values

Our values are captured in 3 words - Discover, True, and Difference.

We don’t have all the answers, but learning at only regular speed will cost us dearly. So we learn fast with a relentlessly help-seeking mind-set. Fears and ego must be set aside, concentrate on finding the person that can accelerate our learning. This mind-set is the opposite of assuming you have all the answers.

When you surprise with the whole picture, you build trust for having the integrity and self-assurance to say things ‘as they are’. We are champions of transparency. But we cannot know what is true, and be trusted to deliver the full picture, if we don’t obsess the details in all that we do.

We don’t know what will work until we try, so we mustn’t be afraid of trying something different. Whilst we actively seek and celebrate different opinions, we understand that without data we have nothing more than an opinion.


Who are we looking for?

A Scala developer for whom cleanly structured code, with an associated suite of effective tests, is simply a given. Details matter to you and you will take the extra time to really complete a task.

On top of a solid base, you enjoy discussing architecture and module design and have a broader exposure to the various elements of a contemporary server side application. It’s fine if you’re less experienced in these broader areas – as long as you’d relish the opportunity to contribute and learn.


The kind of thing you’ll be doing..

You and the rest of the team discuss the new requirement for improving the Property Partner product and thrash out a solution around the whiteboard.

You are given responsibility for the feature and add a brief functional description to the Wiki before beginning.

You fire up your Scala IDE and write unit tests and business class implementations using idiomatic Scala and pure functions wherever possible.

A more complex component uses Slick to talk to MySQL running on Amazon RDS, so having scripted the schema changes, a more complex test is required to verify the module.

Ultimately, the feature requires a REST interface exposed via Play and so you verify the system behaviour using a feature test.

Finally, you add another integration test to verify behaviour under highly-concurrent access. After all, the system handles people’s money so it has to be right.

All is well so you’re ready to commit to the source tree.

You raise a Git pull request to have the code peer reviewed and merged.

Requirements


Some useful extras:


You should:

Benefits

Apply for this job