Position: Senior Scala Engineer
Company: Waverley Software
Experience required: 5y
Category: Scala
English level: intermediate
Published: 2021-12-01T00:00:00+02:00

Our client is a leader in smart building and digital twin SaaS technology that continues to create one of the world’s largest repositories of commercial real estate data, and leads the industry transformation to autonomous buildings. 

The product goal is to empower real estate owners to increase portfolio value through connected building systems, enhanced tenant experiences, and actionable insights: 
- addresses key trends for commercial real estate owners including an accelerated focus on building health and greater emphasis to reduce the carbon footprint of commercial buildings
- helps commercial buildings better integrate disparate systems into a smart building SaaS platform to maximize asset and portfolio value with all building systems, workflows and people seamlessly connected in one solution 
- improves health and wellness, experience, efficiency, and sustainability. Provides the industry’s most comprehensive data, enabling operators to enhance tenant experience, save money and increase operational transparency.

Responsibilities:
- Develop high-quality, maintainable and reusable code using best practices (unit testing, source control, and design patterns)
- Create proof of concepts to try new technologies and tools before adding them to current tech stack
-Employ industry best practices to continuously improve coding practices and test-driven development within an agile development framework.
-Implement robust processes to deploy code from a code repository to the cloud
-Improve SDLC for added developer efficiency
-Take ownership of the success of the team with a "gets things done" attitude

Required skills:
- 6+ years of commercial software development experience 
- 3+ years of experience with  Scala
- Understanding of Object Oriented and Functional Programming concepts like event loops, scheduling, threads, and memory management.
- Experience using Akka platform and various Akka tools (i.e., Akka.Http, AkkaStreams, AkkaCluster)
- Working knowledge of containers and container orchestration (e.g., Docker, Kuberenetes)
- Solid understanding of Distributed systems in the cloud (e.g., Kafka, RabbitMQ, Azure ServiceBus)
- Knowledgeable in Test-driven development and tools (e.g., ScalaTest, SBT)
- Experience with various Databases technologies (e.g., Postgres, SQL Server) and tools (e.g., Slick, Doobie)
- Experience with various Git flows and tools (e.g., GitHub)
- At least Intermediate English (spoken and written)

Nice to have: 
- Experience with developing IoT systems on edge and in the cloud using Scala and Akka.
- Experience working with low-level protocols (e.g., MQTT, AMQP, BACnet, Avro)
- Experience with Agile methodologies (Scrum and Kanban) and Tools (Jira, Confluence, BaseCamp)