Job Information
IBM Backend Software Developer in MARKHAM, Ontario
Introduction
A career in IBM Software means you’ll be part of a team that transforms our customer’s 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.
We are seeking a skilled back-end developer to join our IBM Software team. As part of our team, you will be responsible for developing and maintaining high-quality software products, working with a variety of technologies and programming languages.
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
As a key member of our dynamic team, you will play a vital role in crafting exceptional software experiences. Your responsibilities will encompass the design and implementation of innovative features, fine-tuning and sustaining existing code for optimal performance, and guaranteeing top-notch quality through rigorous testing and debugging. Collaboration is at the heart of what we do, and you’ll be working closely with fellow developers, designers, and product managers to ensure our software aligns seamlessly with user expectations.
Required technical and professional expertise
Software Development Expertise:
Strong background in software development, demonstrating expertise in programming languages such as Java, JavaScript, Typescript and/or Python.
Build scalable and secure microservices and APIs using Java frameworks (e.g., Spring Boot, Spring Cloud).
Develop RESTful web services and ensure optimal performance, security, and maintainability.
Write efficient, reusable, and testable code.
Architecture & Design:
Participate in the design and architecture of complex backend systems, ensuring they meet business requirements.
Contribute to decisions on architectural patterns, technology stack, and platform.
Work on system-level design to support high availability, fault tolerance, and scalability.
Familiarity with message brokers and queuing systems (e.g., Kafka, RabbitMQ).
Working knowledge of automated CI/CD pipelines for streamlined development processes. Including delivery toolchains (Jenkins, Travis, Kubernetes)
Cloud Technology Proficiency:
Experience with cloud-based technologies, showcasing familiarity with modern cloud ecosystems and tools like Azure, AWS, IBM Cloud, OpenShift.
Work with containerization technologies like Docker and orchestration tools like Kubernetes.
SQL / NoSQL Database Knowledge:
Expertise in relational and NoSQL databases (e.g., MySQL, PostgreSQL, MongoDB, Redis).
Self-Starter Mindest:
A self-starter with a proactive mindset, able to initiate and drive projects independently.
Excellent Problem-Solving Skills:
Demonstrated excellence in problem-solving, with the ability to tackle complex issues and find effective solutions.
Collaborative Team Player:
Ability to work seamlessly as part of a team, contributing to collective goals and fostering a collaborative work environment.
Preferred technical and professional experience
· Good understanding of Web application firewalls, AppDynamics, Dynatrace, New Relic
· Good understanding of RHEL/Scripting/Commands
· Good understanding of API Gateways management, microservices
· Strong understanding of application security concepts and best practices (e.g., encryption, authentication, authorization).
· Experience with test-driven development (TDD) and testing frameworks (e.g., JUnit, TestNG).
· Experience with Reactive Programming (e.g., Spring WebFlux).
· Familiarity with GraphQL for building APIs.
· Knowledge of event-driven architecture and asynchronous processing. Knowledge of technologies like Elastic Search and Kafka distributed data store.
· Familiarity with Agile or Scrum methodologies and project management tools (e.g., Jira, GitHb Projects).