Advisory Software Engineer
IBM
Do you have a passion for learning and applying modern software engineering practices? Are you excited to use these practices to deliver and manage mission critical services at scale? Are you a quick thinker? If so, please read on.
Do you love to solve business problems with systems and integrations? Do you want every day to be a bit different and allow you to work with individuals across the spectrum of the organization? Then you just may be a fit for this critical software developer role.
IBM is trailblazing new solutions and services that span key technologies within the IBM Infrastructure portfolio. We are looking for experienced candidates focused on back-end development. As a software engineer, the ideal candidate must bring a deep level of experience designing, implementing, and troubleshooting modern as-a-service and cloud capabilities.
In addition, they are accountable as individuals and organizational leaders for delivering value by bringing relevant technology domain and implementation expertise in topics aligned with cloud platform integration, orchestration & provisioning, security and DevOps.
As an IBM software developer, you are also expected to assist in the gathering of business and technical requirements, to implement specific technologies while demonstrating progress on a regular basis and to partner with technical leads or project managers to identify and overcome blockers.
Your Role and Responsibilities
Ready to grow your career in the Cloud? Want to have a feeling that you are making a difference? This is your chance to become an integral part of a dynamic team of talented professionals developing and deploying innovative, industry-leading, cloud-based services.
IBM Cloud Core Platform Services is a growing, agile, dynamic organization building and operating leading-edge, highly-available, and distributed cloud services in IBM Cloud. We’re looking for experienced cloud software engineers to join us. This technical role is focused on designing, developing and deploying cloud services, automating wide ranges of tasks, problem-solving, interfacing with other teams to solve complex problems.
You will be part of a strong, agile, and modern team culture driven to create world-class cloud services, delivering an industry leading user experience for our customers. As an integral part of the development team, you will get an opportunity to contribute to the cloud services architecture and design while helping us mentor the next generation of cloud engineers.
Primary responsibilities include but not limited to:
- Becoming an expert and major contributor for designs and implementation efforts of the IBM Cloud Platform Services ecosystem
- Developing highly-available, distributed cloud services, with emphasis on security, scalability and user experience using technologies like Java, Node.js, Golang, Cloudant, Redis, Docker, Kubernetes, Istio and more.
- Reading open specifications and RFC documents and converting them to design docs and implementation
- Identifying opportunities and acting on improving existing tools, frameworks and workflows
- Documenting and sharing your experience with team members, mentoring others
Required Technical and Professional Expertise
- A minimum of a bachelor degree in Computer Science, Software Engineering or equivalent, with minimum of 9 years of experience in Software Development
- At least 3 years of hands-on development experience building applications with one or more of the following: Java, Node.js, Golang, NoSQL DB, Redis, distributed caches, containers etc.
- At least 3 years of experience building and operating highly secured, distributed cloud services with one or more of the following: IBM Cloud, AWS, Azure, Docker, container orchestration, performance testing, DevOps etc.
- At least 3 years of experience in web technologies: HTTP, REST, JSON, HTML, JavaScript etc.
- Solid understanding of the micro-service architecture and modern cloud programming practices. Strong ability to design a clean, developer-friendly API.
- Passionate about constant, continuous learning and applying new technologies as well as mentoring others.
- Keen troubleshooting skills and strong verbal/written communication skills.
Preferred Technical and Professional Expertise
- Masters degree in Computer Science, Software Engineering or equivalent
- Experience in remotely supporting customer engagements to help driving the adoption
- Experience as technical lead managing team of engineers in driving development of highly scalable distributed system