IBM Corporation San Jose , CA 95111
Posted 2 months ago
Introduction
A career in IBM Software means you'll be part of a team that transforms our customers challenges into solutions.
Seeking new possibilities and always staying curious, we are a team dedicated to creating the world's leading AI-powered, cloud-native software solutions for our customers. Our renowned legacy creates endless global opportunities for our IBMers, so the door is always open for those who want to grow their career.
IBM's product and technology landscape includes Research, Software, and Infrastructure. Entering this domain positions you at the heart of IBM, where growth and innovation thrive.
Your Role and Responsibilities
Develop, test, deploy and support back-end software products to process and understand business documents at scale, across Cloud and On-premise contexts. Use leading edge and/or proven technologies and techniques from across artificial intelligence, hybrid cloud, programming languages, runtimes, algorithms and data structures towards delivering software products.
Work in an agile and collaborative environment, with peer developers, architects and managers to translate input requirements and feedback as well as articulate output deliverables and their behaviors. Ensure that all software contributions at work are thoroughly tested and evaluated at the unit, component, integration, deployment and end-to-end levels across the product into which they are delivered. Write clean, maintainable code with a test-driven development mindset. Conduct tests and evaluations covering dimensions of output quality, memory consumption and runtime performance. Contribute to CI and CD pipelines to take their changes through various build, test and deployment stages. Investigate and aid support team in resolving customer-reported problems. Remediate security vulnerabilities across the software stack in a timely manner. Author and maintain end-user and peer-developer documentation. Uphold established best practices and development guidelines on behalf of the team. Focus on improving performance of self and team.
Example technical areas that someone in this role could participate in solving/improving: tabular data extraction, optical character recognition, document reading order, document structure analysis, parallel processing of documents and pages, model loading and serving, Python programming, performance profiling and tuning etc.
Required Technical and Professional Expertise
2+ years of programming experience in Python and Java or Scala
2+ years of professional software development experience including design, implementation, testing, build and release of software product feature
Evaluating trade-offs when comparing choices of algorithms and data structures.
Design and development of APIs
Preferred Technical and Professional Expertise
Iterative AI model development using PyTorch and data science.
Design, development and deployment of scalable micro-services using RedHat Openshift and Kubernetes.
Working knowledge of Gradle, Jenkins, Docker and Kubernetes.
API development using gRPC, REST and OpenAPI specifications
IBM Corporation