- You are an IBM Cloud Software Development Engineer.
- You are talented, innovative and enthusiastic Software engineering professional who wants to develop and improve software that powers the Cloud and build the next generation cloud & security services to make our customers succeed.
- You are a part of Cloud platform Service Engineering team.
- You are responsible for delivering infrastructure services with top-notch performance, first-rate security, fail-safe reliability and exceptional quality.
- You will be the key individual responsible for development of new cloud services on the IBM Cloud Platform.
- You will get to work with Fortune 100 Enterprise clients and build hyperscale cloud services for the largest companies in the world.
- We are a global team, so communication skills (both verbal and written) are critical as well as flexibility to work with team members in other time zones.
· 11 to 14 years industry experience with proven deep knowledge of Golang/C/C++(Golang preferred).
· Programming experience in object-oriented design principles and patterns, with solid knowledge of REST and gRPC.
· Experience with data modeling and API design.
· Strong knowledge of data structures.
· Hands-on experience implementing distributed applications in a container environment (Docker/Kubernetes) along with considerable experience configuring and administrating Linux (or UNIX) systems.
· Strong experience working in large distributed microservice architectures.
· Experience in building tests for gRPC, RESTful APIs and SOAP webservices.
· Experience with relational databases and SQL (Oracle, MySQL, PostgreSQL), also non-relational e.g. ETCD a plus.
· Familiarity with Cloud infrastructure (AWS/Azure/GCP), CI/CD & DevOps
· Ability to script in shell or python when required.
· Experience in large systems software design and development.
· Demonstrated experience leading a team of junior developers and driving technical delivery.
· Ability to quickly learn new technologies and implement prototypes in a timely fashion.
· Demonstrated problem-solving and analytical skills.
· Ability to identify areas of improvement and automation opportunities
· Expertise in performance optimization and scalability of complex systems.
· Experience with asynchronous programming and concurrency models. Goroutine, channels are plus.
· Proficiency in security best practices and secure coding principles.
· Skilled in conducting code reviews and providing constructive feedback. Responsible for ensuring code quality and maintaining high standards.
· Ability to manage technical debt and ensure maintainability of codebases.
· Thorough understanding of networking layer, OSI model.
· Strong understanding of software design patterns and various operating systems (Linux, Mac OS, Windows).
· Excellent communication skills and cross-functional collaboration skills.
· Display ability to drive
· Expected to make strategic technical decisions and provide architectural guidance.
· Expected to foster innovation and continuous improvement in the team.
· Excellent communication, analytical, cross-functional collaboration, and stakeholder management.
· Certified Kubernetes Application Developer (CKAD) preferred.
· Understanding security and compliance issues.
· MS in Computer Science preferred. Can consider non-CS degrees if there is strong relevant experience.