Go Lang Compiler Developer

IBM 

📍 Bengaluru, Karnataka, India, India 🇮🇳

full-time
junior
Posted —

Key Skills

GolangCompilerToolchainLinuxGit

Industry

Consumer ElectronicsTelecommunications

Job Description

Introduction

About The Team

The Compiler & Toolchain team on IBM Z focuses on enabling and optimizing modern programming languages and runtime ecosystems for enterprise workloads on IBM Z systems. The team works on compiler enablement, toolchain validation, performance optimization, benchmarking, and upstream open-source contributions for technologies such as Golang, OpenJDK, .NET and Node.js on Linux for IBM Z.

Your Role And Responsibilities

Golang Compiler & Toolchain Development:

  • Develop and maintain Golang compiler and toolchain features for IBM Z platform.
  • Support debugging and fixing issues in the Go compiler, assembler, runtime, and standard libraries on IBM Z platform.
  • Run and analyze compiler validation, benchmark, and regression tests to identify performance characteristics and functional issues.
  • Assist in optimizing Golang applications and runtime behavior for IBM Z architecture.
  • Learn and contribute to automation of Go compiler/toolchain validation and benchmarking workflows.
  • Work with upstream Go open-source communities and contribute fixes/enhancements where applicable.

Optimization And Performance

  • Assist in profiling Go applications and compiler-generated code to identify performance bottlenecks.
  • Support implementation and validation of compiler and runtime performance improvements under guidance from senior team members.
  • Learn performance tuning techniques specific to IBM Z architecture.
  • Participate in benchmarking and comparative analysis across Go releases and toolchain versions.

Collaboration And Communication

  • Work closely with team members and mentors to understand compiler internals and development workflows.
  • Collaborate with development, testing, and performance teams to troubleshoot and resolve issues.
  • Participate in technical discussions within the compiler and toolchain ecosystem.
  • Communicate progress, findings, and technical challenges clearly within the team.

Preferred Education

Master's Degree

Required Technical And Professional Expertise

Required Professional and Technical Expertise:

  • Bachelor’s or Master’s degree in Computer Science, Electronics, Information Technology, or related field.
  • Strong C/C++ programming skills and data structures with 1-2 years of project development experience.
  • Good understanding of System programming, Linux Operating systems and Linux internals.
  • Basic understanding of compiler concepts and compilation stages/process.
  • Familiarity with debugging concepts.
  • Exposure to Linux development environments and shell scripting.
  • Understanding of software build systems, testing, and debugging tools.
  • Strong analytical and problem-solving skills.
  • Good communication and teamwork abilities.

Preferred Technical And Professional Experience

Preferred Technical and Professional Experience:

  • Exposure to compiler development projects, compiler technologies, toolchains, or systems programming projects.
  • Familiarity with assembly language concepts and computer architecture.
  • Knowledge of Golang programming language.
  • Knowledge of Git, CI/CD workflows, and open-source development practices.
  • Exposure to performance analysis and benchmarking tools.
  • Understanding of IBM Z architecture, Linux on IBM Z platform, or enterprise systems is an added advantage.