Introduction
At IBM, work is more than a job - it's a calling: To build. To design. To code. To consult. To think along with clients and sell. To make markets. To invent. To collaborate. Not just to do something better, but to attempt things you've never thought possible. Are you ready to lead in this new era of technology and solve some of the world's most challenging problems? If so, lets talk.
Your Role and Responsibilities
As a software deverloper you will be responsible for design, development, and testing of key components. You will work with our worldwide team of Architects, Product Managers, Researchers, Developers, Testers, and Support Engineers to rapidly understand use cases and deliver projects that meet our customer's requirements.
Responsibilities:
Design, develop, implement, automate, deploy, and operate enterprise quality cloud native software using a microservice architecture through agile development practices.
Performs design and implementation reviews for other developers on multiple projects.
Regularly develop automation testing and maintenance of microservices.
Prepares, writes, or reviews technical documentation, such as content to be included in the product documentation and training materials.
Prepares and presents technology architecture/design and demos at playback meetings to show progress and solicit team direction.
Assists customers and other IBMers to effectively use our products and learn from their experiences.
Identify and recommend improvements that can be made to continuously evolve and improve.
Required Technical and Professional Expertise
- Bachelor's Degree in Computer Science, Engineering, or a related technical discipline
- Development experience with Java
- Understanding of/experience with Object Oriented Programming
- Solid knowledge on Agile methodology and practices, such as SCRUM, Extreme Programming (XP), Test Driven Development (TDD), etc
- Experience working with relational databases and/or NoSQL databases
- Experience working with REST APIs and JSON data.
- Comfortable multi-tasking and working as part of a global team, as well as working independently and taking ownership
- Strong verbal and written communication skills
- Team-mindset: Willingness to collaborate and iterate
- Growth-mindset: Willingness to learn new technologies and processes.
Preferred Technical and Professional Expertise
- Web security and API security
- Java microservices
- PythonLinux and networking skills
- GraphQL
- Elasticsearch or OpenSearch
- NLP (Natural Language Processing)
- Message queues like RabbitMQ or Kafka
- Memory store such as Redis
- Docker/Kubernetes/OpenShift
- Experience with cloud-hosting solutions and CI/CD pipeline tools such as Jenkins, Travis, etc.
- Understanding of/experience with Cloud or a similar service e.g. AWS, IBM cloud etc.