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, Java 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 Java ecosystem.
As a member of the Language Engineering team, you will,
- Identify bad code practices in Java 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 Java.
- Understanding of the nuances of execution of the source code (AST, data flow graphs, etc).
- Familiarity with Java best practices followed in the industry.
- Native experience with Linux/Unix environment.
- A focus on delivering high-quality code through strong testing practices.