Software Engineer, Static Analysis - Scala

Roles at DeepSource
Bangalore, India
Language Engineering

Software Engineer, Static Analysis - Scala

There are over 40 million developers in the world, and all of them write and review code in some form. DeepSource is working on building tools that help developers ship good code. We believe there's a massive opportunity to impact how software is built right from where the code is written using automation and intelligence, which not only improves developer productivity but also increases software’s robustness.

The Language Engineering team works on the source code analyzers, including both programming languages and configuration-as-code systems. As a member of the Language Engineering team, you will work on building the best, most comprehensive, Scala analyzer in the world. You will add new rules and Autofixes for finding more issues with code and automatically fixing them. You will be involved with the community to understand the problems with static analysis tools in the Scala ecosystem.

As a member of the Language Engineering team, you will,

  • Identify bad code practices in Scala and write new analyzers to detect them.
  • Improve the coverage of automatically fixable issues.
  • Ensure fewer false-positives are reported by the analyzer.
  • Work on the internal tools that support analysis runtimes.
  • Contribute to open-source static analysis tools.

We're looking for someone who has,

  • A strong foundational knowledge in Computer Science.
  • At least 3 years of professional software development experience in Scala and Java.
  • Understanding of the nuances of execution of the source code (AST, data flow graphs, etc).
  • Familiarity with Scala best practices followed in the industry.
  • Native experience with Linux/Unix environment.
  • A focus on delivering high-quality code through strong testing practices.

We are looking forward to hearing from you