Senior / Middle Scala Backend Developer
We are looking for an engineer who uses Scala as Java 3.0, OCaml/ML/Rust like style for performance and readability reasons.
Engineer who using functional programming as defined in ML (programming language) and not fancy category theory stuff.
Engineer who using Occam razor approach to reduce complexity until it irreducible and not to bring redundant complexity into production.
Engineer who understand that MVP will not require any good code and proper design, but quick implementation of project to test idea and meet deadlines.
Engineer who understand that production code should be profiled, measured and verified how it fit into the system.
Engineer who don't need to be managed and micromanaged.
Engineer who is responsible about TCO (total cost of ownership) and do not bring redundant expenses like introducing some cloud stuff.
Primary Responsibilities:
- Architect and develop production grade systems and MVP services;
- Manage individual projects priorities, deadlines and deliverables with your technical expertise.
Requirements (relate to salary rate):
- Proficiency in JVM internals and performance optimization;
- Knowledge of concurrent programming techniques and challenges;
- Knowledge of Java NIO, Foreign Function and Memory API (JEP 454), FFI, Structured Concurrency (JEP 453), Virtual Threads (JEP 444);
- Experience with rocksdb, sqlite, postgresql;
- Knowledge of flatbuffers, protobuf, Cap'n Proto, or any other binary serialization;
- Preferably experience with bazel, nixos, netty/vertx;
- Python (starlark) to write bazel custom rules.
Will be a plus:
- Kotlin/Java;
- Knowledge of Rust, C/C++;
- Profiling with perf, async-profiler;
- Knowledge and experience with SEDA/LMAX Disruptor/Thread-Per-Core approach;
- Knowledge of WebRTC, Media gateways.
Scala knowledge is not required if you can write code in any in functional style like Ocaml/ML/Rust.