Overview

Luna is looking for a senior Scala software engineer to take charge of the design, development, and evolution of the new SaaS offering for Luna, a project said by Singularity University to have the potential to change the lives of one-billion people. If you bring strong technical skills and have a passion for collaboration, this role could be for you.

As a senior Scala engineer, you'll be leading the effort to design and develop our new SaaS offering, providing a web-based version of Luna to our clients. Your work will be integral to the next phase of Luna's development, as we expand our offering beyond the open-source project. You'll be able to work with a world-class team of skilled engineers, community managers, and business developers (from Bloomberg, GitHub and PayPal to name a few), and put your indelible stamp on Luna's future.

What You'll Do

As a senior scala software engineer you'll be in charge of building the SaaS offering for Luna, hosting both the language and its IDE in the cloud. This will involve:





Working closely with the internal teams to design a secure and scalable SaaS architecture.







Developing a SaaS solution based upon that design with robust tooling and reliability, as well as inbuilt support for collaboration.







Contributing to the evolution of this vibrant open-source project by bringing a new component to its ecosystem and product offering.





The Skills We're Looking For

We have a few particular skills that we're looking for in this role:





Solid understanding of Scala language elements of functional programming.







Understanding of immutability.







JVM basics, memory model, threads, principles of work knowledge.







Data structures and basic algorithms knowledge.







Systems design & networking (understanding basic principles) .









Experience working with Git and Linux.







Scala on backend: servers, web.







Akka library: actors, streams, http.







Git and source management flows, deployment.







Cats, cats-effect libraries .







Messaging systems, protocols and design patterns .





It would be a big bonus if you also had:





Experience with Cloud computing architectures (AWS, Google Cloud).







Experience with container technologies (Docker, Kubernetes, etc.).







Experience working in close conjunction with multiple product teams to ensure that the solutions you provide meet their needs.





Avoid the confidence gap. You don't have to match all of the skills above to apply!