Job Description
Job Title: Software Engineer
About The Company
IBM is a global technology and consulting company that helps organizations use technology to solve complex business challenges. With expertise in cloud computing, artificial intelligence, data, cybersecurity, and enterprise software, IBM works with clients across industries to modernize systems and create new capabilities. The company combines research, technology, and consulting services to support organizations as they adapt to changing markets. At IBM, teams collaborate across disciplines and geographies, bringing different perspectives to customer-focused work. Employees have opportunities to contribute to products and solutions used by organizations around the world while continuing to develop their technical and professional skills.
About The Role
IBM is seeking a Software Engineer to help design, develop, test, and maintain reliable software solutions. In this role, you will work with engineers, product managers, designers, quality specialists, and other partners to understand user and business needs and turn them into practical technical outcomes. You will contribute throughout the software development lifecycle, from exploring requirements and evaluating design options to implementation, release, and ongoing improvement. The position may involve cloud-based services, enterprise applications, APIs, data platforms, or other software products, depending on team priorities. The successful candidate brings sound engineering judgment, curiosity, and a commitment to building secure, accessible, and maintainable technology.
Qualifications
A bachelor’s degree in computer science, software engineering, or a related field, or equivalent practical experience, is preferred. Candidates should have experience developing software in one or more programming languages, such as Java, Python, JavaScript, Go, or C++. Familiarity with data structures, algorithms, object-oriented design, and common software development practices is expected. You should understand version control, code review, testing, and debugging, and be comfortable working with development tools and collaborative workflows. Experience with cloud platforms, containers, databases, distributed systems, CI/CD pipelines, or Agile methods is helpful, though the relevance of these skills will depend on the team. Strong written and verbal communication, analytical thinking, attention to detail, and a willingness to learn are important. Candidates should be able to work constructively with colleagues, explain technical ideas clearly, and manage assigned work responsibly.
Responsibilities
Design, implement, test, and maintain software components that meet functional, performance, security, and reliability expectations. Collaborate with technical and nontechnical partners to clarify requirements, identify constraints, and propose appropriate solutions. Write readable, reusable, and well-documented code in alignment with team standards. Participate in code reviews and provide thoughtful, constructive feedback that supports quality and knowledge sharing. Develop unit, integration, and other automated tests, investigate defects, and help resolve issues in development and production environments. Contribute to technical design discussions, assess trade-offs, and identify opportunities to improve architecture, usability, and maintainability. Work with build, deployment, monitoring, and automation tools to support efficient delivery. Keep informed about relevant technologies and engineering practices, and share useful insights with the team. Protect sensitive information and consider security, privacy, accessibility, and responsible technology principles in everyday development decisions.
Benefits
IBM offers a collaborative environment with opportunities to work on meaningful technology challenges and develop skills over time. Depending on the position, location, and applicable employment terms, benefits may include health and wellness programs, retirement and financial planning resources, paid time off, learning and professional development opportunities, and employee assistance programs. Eligible employees may also have access to flexible work arrangements and internal career development resources. Specific benefits vary by country, role, and employment status and will be explained during the hiring process.
Equal Opportunity
IBM is committed to equal opportunity and to fostering an inclusive workplace where people can contribute and grow. Employment decisions are made without regard to protected characteristics under applicable law. IBM provides reasonable accommodations to qualified individuals with disabilities and supports an accessible hiring process. Candidates who need an accommodation may request assistance during the application process.
About The Company
IBM is a global technology and consulting company that helps organizations use technology to solve complex business challenges. With expertise in cloud computing, artificial intelligence, data, cybersecurity, and enterprise software, IBM works with clients across industries to modernize systems and create new capabilities. The company combines research, technology, and consulting services to support organizations as they adapt to changing markets. At IBM, teams collaborate across disciplines and geographies, bringing different perspectives to customer-focused work. Employees have opportunities to contribute to products and solutions used by organizations around the world while continuing to develop their technical and professional skills.
About The Role
IBM is seeking a Software Engineer to help design, develop, test, and maintain reliable software solutions. In this role, you will work with engineers, product managers, designers, quality specialists, and other partners to understand user and business needs and turn them into practical technical outcomes. You will contribute throughout the software development lifecycle, from exploring requirements and evaluating design options to implementation, release, and ongoing improvement. The position may involve cloud-based services, enterprise applications, APIs, data platforms, or other software products, depending on team priorities. The successful candidate brings sound engineering judgment, curiosity, and a commitment to building secure, accessible, and maintainable technology.
Qualifications
A bachelor’s degree in computer science, software engineering, or a related field, or equivalent practical experience, is preferred. Candidates should have experience developing software in one or more programming languages, such as Java, Python, JavaScript, Go, or C++. Familiarity with data structures, algorithms, object-oriented design, and common software development practices is expected. You should understand version control, code review, testing, and debugging, and be comfortable working with development tools and collaborative workflows. Experience with cloud platforms, containers, databases, distributed systems, CI/CD pipelines, or Agile methods is helpful, though the relevance of these skills will depend on the team. Strong written and verbal communication, analytical thinking, attention to detail, and a willingness to learn are important. Candidates should be able to work constructively with colleagues, explain technical ideas clearly, and manage assigned work responsibly.
Responsibilities
Design, implement, test, and maintain software components that meet functional, performance, security, and reliability expectations. Collaborate with technical and nontechnical partners to clarify requirements, identify constraints, and propose appropriate solutions. Write readable, reusable, and well-documented code in alignment with team standards. Participate in code reviews and provide thoughtful, constructive feedback that supports quality and knowledge sharing. Develop unit, integration, and other automated tests, investigate defects, and help resolve issues in development and production environments. Contribute to technical design discussions, assess trade-offs, and identify opportunities to improve architecture, usability, and maintainability. Work with build, deployment, monitoring, and automation tools to support efficient delivery. Keep informed about relevant technologies and engineering practices, and share useful insights with the team. Protect sensitive information and consider security, privacy, accessibility, and responsible technology principles in everyday development decisions.
Benefits
IBM offers a collaborative environment with opportunities to work on meaningful technology challenges and develop skills over time. Depending on the position, location, and applicable employment terms, benefits may include health and wellness programs, retirement and financial planning resources, paid time off, learning and professional development opportunities, and employee assistance programs. Eligible employees may also have access to flexible work arrangements and internal career development resources. Specific benefits vary by country, role, and employment status and will be explained during the hiring process.
Equal Opportunity
IBM is committed to equal opportunity and to fostering an inclusive workplace where people can contribute and grow. Employment decisions are made without regard to protected characteristics under applicable law. IBM provides reasonable accommodations to qualified individuals with disabilities and supports an accessible hiring process. Candidates who need an accommodation may request assistance during the application process.
Your LinkedIn headline is the first thing a recruiter reads in search results. Type your job and a few facts, and our headline writer gives you five to pick from. Write a headline →
View Similar Jobs
Matches Jobs
Similar jobs which you may be interested in. Typically using your existing skillset.