Backend Developer

Toronto 22 months agoFull-time External
Negotiable
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 The IBM Turbonomic team is looking for a well versed Backend developer in its Markham, CA location. Specific responsibilities will include: • Design and code services, applications and databases that are reusable, scalable and meet critical architecture goals • Develop microservice-based application components deployed in Docker, Kubernetes, OpenShift enviroments. • Create Application Programming Interfaces (APIs including REST) that are clean, well-documented, and easy to use. • Fluent in SQL and have experience optimizing queries and schemas to tune performance for large database tables. • Experience with a variety of databases, especially MySQL. • Build public cloud based multi-tenant SaaS solutions. • Work extensively with Java and cloud native tools, applying principles of object-oriented design. • Design and develop automated tests to prevent regressions. • Provide technical leadership for end-to-end project design and development. • Work in an Agile development environment creating and managing epics and user stories. • Provide thorough, professional documentation of new features and software as it is developed. • Contribute to architecture and technical design discussions and code review in collaboration with other teams. • Consult with product management team about user needs and software requirements. • Participate in customer calls and provide assistance to support team to help address technical issues. • Communication, organization, critical, analytical thinking and research skills are critical in this role. • Analyzing and resolving security vulnerabilities. The tech stack includes: Java, MySQL, Golang (GO), Docker, Kubernetes, Helm, OpenShift, Consul, Kafka, Protobuf/gRPC, REST, React, Redshift, CloudFormation, Flink, and ThoughtSpot. Dev tools include: maven, github, Jenkins, Jira What you will do • You’ll work in a dynamic, collaborative environment. • Analysing information received from stakeholders to plan and execute software development for varying needs by creating high-quality application that is robust, readable and scales. • Exploring the areas for improvement and constantly developing the user experience by adding new features. • Analysing bugs and fixing them to ensure the software runs without errors. • Adopt problem-solving as a way of life - always go to the root cause. • You’ll employ IBM’s Design Thinking to create products that provide a great user experience along with high performance, security, quality, and stability. • Developing and implementing new techniques for testing and validating software systems • Adopt problem-solving as a way of life - always go to the root cause. • Guiding the software programming efforts. • Directing the compilation of the documentation • Communicating project statuses and proposals in close collaboration with clients and other internal departments. • Maintaining and enhancing current codebases, and peer-reviewing code modifications NASW_24 Required Technical and Professional Expertise • 5+ years experience in coding and debugging in Java. • Experience with VMWare, HyperV or similar hypervisor vendor technologies. - Experience in Agile Software development and methodologies. • Proficiency in Java and REST APIs. • Experience with relational databases, schema design and SQL. • Excellent communication skills, team collaboration and critical thinking, Thorough understanding of data structures, algorithms, and object-oriented design. • Background with web application stack and common design patterns in web framework, • Must have strong communication and team working skills • Preferred Technical and Professional Expertise • Experience with VMWare, HyperV or similar hypervisor vendor technologies. • Experience with APM tools such as AppD, Dynatrace, Instana. • Experience with distributed source control systems such as Git and Mercurial. • Experience with test-driven development and frameworks. • Familiarity working in a DevOps model. • Experience with JavaScript and one or more modern JS UI frameworks