Senior Scala Developer Contract
We are seeking a seasoned and experienced Senior Scala Developer to join our team on a contract basis.
Job Description
The ideal candidate will possess a strong background in software application development, with a proven track record of implementing new data solutions while maintaining the stability of complex platforms.
Key responsibilities include:
* Collaborating with cross-functional teams to design and develop scalable, maintainable, and efficient software applications
* Demonstrating expertise in software engineering principles, best practices, and design patterns
* Developing container-based applications in a microservices architecture using Scala, Python 3.10+, and other relevant technologies
* Working with Big Data Hadoop platforms like Databricks, Cloudera, Teradata, and others
* Designing and developing highly available, fault-tolerant software applications
* Experience with Git or similar version control software, testing frameworks, CI/CD, test automation, and software monitoring and alerting
* Familiarity with relational and NoSQL databases, query languages, and messaging queues
Requirements
To be considered for this role, candidates should have:
* 8-15 years of commercial experience in software application development as a programmer
* A solid understanding of software engineering principles and practices
* Proven experience in developing data processing applications using Scala, Python 3.10+, and other relevant technologies
* Strong understanding of software engineering best practices, design patterns, and the ability to write highly maintainable and readable code
* Expertise with Big Data Hadoop platforms and a fundamental understanding of the Hadoop architecture
* Creativity and passion for tackling challenging data problems and complex algorithmic issues
* Willingness to work in a start-up environment
Desirable Skills
Candidates with the following skills are preferred:
* Experience working with relational and NoSQL databases, including tuning and optimising complex queries for highly scalable systems
* Query languages, such as Hive/SparkSQL and ANSI SQL
* Building large-scale Spark 3.x applications and data pipelines, ideally with batch processing running on Hadoop clusters
* Messaging queues, such as Kafka, RabbitMQ, or JMS, and reactive architecture paradigm