SENIOR SCALA DEVELOPER
Location: remote or HQ in Gdańsk
Team: Scala Team
Are you passionate about technology and interested in Functional Programming?
Do you want to “Do the right thing”, deliver high-quality tech solutions & great products?
If you’ve responded positively to the above questions and want to work in a great, international team, that is passionate, creative, ambitious, open to knowledge-sharing, and loves to cooperate with each other - join Scalac!
We are looking for people like you!
As a Senior Scala Developer, you will:
- Implement business logic based on the established requirements.
- Design and implement database systems.
- Design and implement web APIs.
- Implement unit / functional / integration tests.
- Create technical documentation of the delivered code.
- Evaluate the implemented code and its possible optimization.
- Analyze and fix errors resulting from incorrect software operation.
- Code development in accordance with the best practices for application and data security.
- Maintain the infrastructure and tools for storing and integrating the code and publish the delivered software.
- Integrate tools for monitoring running software in order to detect errors in its operation or to monitor its performance.
- Collaborate with Frontend developers, testers, and project managers to integrate with other software systems.
- Collect and define business requirements in cooperation with domain experts.
- Conduct a code-review process to ensure the high quality of delivered software code.
- Advise less experienced teammates on how to plan and work effectively.
- Independently set out priorities and sticks to them when completing tasks.
- Independently indicate and create solutions for areas requiring innovation.
- Independently make decisions even in high-risk situations.
- Predicts the occurrence of problems even in complex situations and discusses them before they manifest.
- Participate in planning and work estimation.
- Cooperate with different clients.
- Work with an international team and share knowledge, skills, and information with your teammates.
What do we expect from you?
- Knowledge of Object-Oriented and Functional Programming at an advanced level.
- Knowledge of Scala technology and the ability to prototype in Scala at an advanced level.
- Knowledge of Machine Learning, Data Engineering, Spark technology at an advanced level.
- Knowledge of data formats: CSV, Parquet, Avro at the advanced level.
- Use of good programming practices.
- Ability to test manual, automatic, and continuous integration at an advanced level.
- Ability to write modern asynchronous and multithreaded applications at an advanced level.
- Experience in conceptual and development work on algorithms at an advanced level.
- Knowledge of mathematical issues, algorithms, and data structures at the advanced level.
- Knowledge and the ability to use design patterns in practice.
- Experience in implementing developed algorithms using a programming language at an advanced level.
- The team-oriented mindset with a willingness to share your experience and knowledge.
- Be able to independently make decisions, foresee, and take full responsibility for their eventual consequences.
- Having a proactive approach, the “can do” attitude to be able to suggest solutions influencing the increase of teamwork efficiency.
- Independence in your tasks and decisions while keeping the rest of the team in mind.
- Growth mindset, willingness to learn, problem-solving skills, and being a real team player.
- Excellent communication skills in English so you can communicate with our clients freely.
Which technologies do we work with?
- Scala stack: Scala, ScalaTest, SBT, Akka HTTP, Circe, Akka Actors, Play, Cats, Akka Streams, Slick, Cats Effect, Play-JSON, Spray-JSON, Specs2, Akka Persistence, Doobie, HTTP4S, Scalaz, ZIO, Akka Clustering, Monix, Shapeless;
- RDBMS: SQL (the language), PostgreSQL, MySQL, MariaDB, SQL Server;
- NoSQL: MongoDB, Redis, Cassandra;
- Messaging: Kafka, RabbitMQ;
- Architecture: Microservices, Domain-Driven Design, Event Sourcing;
- Cloud providers: AWS, GCP, Azure;
- Containerization: Docker, Docker-compose, Kubernetes;
- Distributed processing: Spark Core, Spark Streaming.
What you can expect from us?
- Work in a start-up atmosphere
- Great customers and projects to work with
- Opportunity for professional development (+ development budget)
- Unforgettable team meetings
- Plenty of independence and responsibility
- Regular feedback and evaluation
- Possibility of working in an unusual and comfortable office in Gdańsk
- Best work equipment
- Monthly salary - in the amount of 14 000 - 19 000 PLN / month on b2b contract
About Scalac:
Scalac is a software house that is present on the market since 2014. We are a remote-friendly company with HQ in Gdansk, and over 120 employees on board in 22 locations. Scalac is a Team! This is crucial. We love to work together. We specialize in system development based on Functional Programming Languages. We are mainly focused on Scala, but we also have Frontend, DevOps, Data, QA, and operations teams. Most of our clients are foreign (over 50% from the US) and most of our employees work as consultants.
Our Happiness Recipe:
- Work hard
- Have fun
- Do the right thing
Do you feel that Scalac is a place where you can see yourself? If you do, apply, so we can get to know each other.
Let’s work hard, have fun, and do the right thing together!