Job Overview
Role: Junior Software Developer (Contract) Location: Bangalore, Karnataka Experience: 0 – 2 Years (Recent graduates and candidates with 1–2 years of relevant experience) Qualification: B.E / B.Tech / B.Sc / M.E / M.Tech / M.Sc Key Skills: Python, C++, Linux, Windows, WSL2, Git, Jenkins, CI/CD, YAML, JSON, Bash scripting, Automated testing, EDA tools, SystemC, hardware simulation workflows
Job Description
This contract opportunity in Bangalore is for recent graduates and candidates with around 1–2 years of experience who have a strong foundation in Python and/or C++. The role focuses on software tool development, cross-platform engineering, CI/CD automation, developer experience, testing and engineering infrastructure. Candidates will work with technologies and environments including Python, C++, Linux, Windows, WSL2, Git, Jenkins, YAML, JSON, Bash scripting and automated testing, supporting engineering teams with production-grade infrastructure.
Roles and Responsibilities
- Tool Development & Optimization: Develop, maintain and optimize backend tools and command-line interfaces using Python and C++.
- Cross-Platform Engineering: Refactor legacy scripts to support both Linux and Windows environments through WSL2; replace hardcoded operating-system dependencies with dynamic environment configurations.
- Interoperability: Work with JSON, XML and YAML to improve interoperability between simulation and engineering tools.
- CI/CD Automation: Develop automated validation scripts and linters for Jenkins CI/CD pipelines; help enforce coding standards and identify errors.
- Developer Experience: Improve developer experience by creating clear error messages and actionable troubleshooting hints.
- Testing: Write unit tests and support automated stress testing; verify software packages install and operate correctly.
- Infrastructure Collaboration: Work with senior software architects and system engineers on production-grade engineering infrastructure.
Skills and Eligibility Criteria
Educational Background: Bachelor’s or Master’s degree in Computer Science, Computer Engineering, Electrical Engineering or a related field.
Experience: Recent graduates and candidates with approximately 1–2 years of experience can apply.
Mandatory Technical Skills:
- Strong foundational knowledge of Python and/or C++
- Comfortable working with Linux and Windows command-line environments
- Familiarity with Git and basic CI/CD concepts
- Basic knowledge of YAML and JSON configuration or data formats
- Familiarity with Windows Subsystem for Linux (WSL)
- Knowledge of Bash scripting or build automation tools is useful
- Basic exposure to EDA tools, SystemC or hardware simulation workflows is an advantage
Competencies:
- Strong problem-solving ability and willingness to learn