Software Engineer – Programming Languages Team
Core
Develop and maintain a Network Query Engine (NQE) and domain-specific languages for network verification and assurance software.
Role type
Senior IC software engineer (programming languages & database systems)
Builds
NQE query engine, domain-specific languages, and supporting tools (IDE plugins)
Domain
Networking infrastructure + programming languages + database systems
Required skills
Java, Scala, object-oriented design, parser design, query optimization, JVM performance tuning
Preferred skills
Functional programming (Haskell, OCaml, F#), compiler/evaluator implementation, database system components (Parquet, Iceberg), static analysis
Technologies
Java, Scala, Apache Parquet, Iceberg, Datafusion, JVM
Responsibilities
Develop and maintain the codebase primarily in Java; Design and implement bidirectional parsing languages and systems; Collaborate with AI experts to design natural language interfaces to DSLs; Build and support tools such as IDE plugins for language support
Seniority
Mid-Senior, hands-on IC
