System programming

caizin· Caizin
Apply Now ↗
📍 Pune, MH, IndiaFULL TIME

About this role

Compiler / Transpiler Engineer (Mid-Level)
Team: Language Tools / Legacy Modernization About the project We are building a transpiler that converts UniBasic (a legacy BASIC dialect) into Java. The codebase we are modernizing is large: on the order of 14,000 source programs: so the transpiler is not a one-off script but a real compiler frontend:

What you will do • Implement and extend parsers for UniBasic statements and expressions (control flow, file/OS I/O, dynamic-array and multivalue operations, CALL dispatch), each producing well-defined AST nodes. • Build and refine semantic-analysis passes: name resolution, parameter-direction inference (input / output / in-out), and type binding/propagation across call sites. • Implement AST-to-AST transformations that lower UniBasic constructs to a Java AST, and help keep the emitter a pure printer. • Handle the hard, real-world edge cases legacy code is full of: ambiguous syntax, context sensitive tokenization, inconsistent formatting, and dialect quirks. • Write thorough tests for every parser, pass, and transformation: including golden-file tests that transpile real UniBasic and compile the generated Java. • Diagnose failures across the whole chain (a wrong .java output traced back to a lexer, parser, or transformer bug) and fix the root cause. • Contribute to design discussions on pipeline architecture, AST shape, and how new language features flow from parse → SEMA → transform → emit.

Must-have qualifications Compiler / language-tool fundamentals • 3–5yearsofsoftware engineering experience, including hands-on work on a compiler, tran spiler, interpreter, static analyzer, linter, or similar language tooling. • Solid working knowledge of the frontend pipeline: lexing/tokenization, parsing (recursive descent / Pratt / precedence handling), AST design, and at least one of semantic analysis or code generation. • Comfortable reasoning about grammars, precedence/associativity, and context sensitive parsing: and about why a construct produces the AST node it does.

Engineering craft • Strong Java (Java 17+) and comfort with a typed, Object-oriented codebase. • Disciplined about testing: you write tests for the code you change and treat a failing corpus file as a bug to root-cause, not skip. • Practical experience with refactoring and clean-code. 1 • Clear written communication; able to justify a parsing/lowering decision and document edge cases

Frequently Asked Questions

Is the salary disclosed for the System programming position at caizin?
The salary for this System programming role at caizin is not publicly listed. Click "Apply Now" to learn more about the compensation package on their official careers page.
Where is the System programming position at caizin located?
This System programming role at caizin is based in Pune, MH, India. The position is listed as on-site or hybrid. Check the full job description or apply directly to confirm the work arrangement.
Is the System programming role at caizin full-time or part-time?
This is listed as a FULL TIME position. It is posted as a System programming role in the Caizin department at caizin.
Which team or department does the System programming at caizin belong to?
This System programming position is part of the Caizin department at caizin. See the full job description for more information about the team structure and responsibilities.
How do I apply for the System programming position at caizin?
Click the "Apply Now" button on this page. You will be redirected to caizin's official application portal hosted on keka where you can submit your application directly.
When was the System programming job at caizin posted?
This System programming position at caizin was posted on Sep 11, 2026. Apply as soon as possible — early applications are often reviewed first.
System programming
caizin
Apply for this role ↗

You'll be redirected to caizin's official application page on keka.