Software Back End Developer
Dublin, IRELAND IT development
Job description
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 Developer with the MultiCloud SaaS Platform, you will be involved in multiple areas of the software development project, which is currently staffed and already in place (back-end devs, front end devs, DevOps). Prior hands-on experience in developing and testing Cloud-based applications and API/microservices would be advantageous. Exposure and experience with IBM Cloud, ROKS, Security and Networking, and Telemetry would stand you out from the rest.
You may be involved in all areas of the Platform, from developing new features and functions, to ensuring the production environment remains stable and reliable.
The developer and Site Reliability Engineer (SRE) teams both care about reliability, availability, performance, scalability, efficiency, and feature and launch velocity. However, SREs operate under different incentives, mainly favouring service long-term viability over new feature launches. SREs are responsible for ensuring services are resilient, responsive and have an up time appropriate to customer’s needs whilst controlling capacity and performance. Additionally, improving these services in a highly dynamic environment.
In summary, SRE is an engineering discipline that combines software, infrastructure and systems engineering to build and run large-scale, massively distributed, fault-tolerant systems. Day-to-day, SREs use automation to limit time spent on operational work and proactively identify potential risk factors and convert them into actionable improvements
Whichever squad you join, the overall approach will be to:
* Analyse the requirements and prepare plans, code, and test to ensure quality deliverables within the multiple-geo Platform team.
* Develop automation tests for the test cases executed & maintain existing regression suite.
* Take ownership of the entire development lifecycle including documentation, testing, and maintenance.
* Participate in sprint planning and other agile ceremonies.
Required Technical and Professional Expertise
Background in software engineering with Java and/or GoLang
Experience automating problems or tasks to reduce toil (Powershell, shell, python etc.)
Knowledge of building and using observability, defining metrics or measures and dashboards, use of observability tools (Sysdig, Kibana, Prometheus, Grafana, Zabbix)
Experience with a logging and analytics framework (Splunk, LogDNA, or ELK stack)
System design knowledge (cloud-native architectures, best practices for availability and resiliency, practices and methods for problem isolation)
Experience with pipeline tools for deploying and managing applications (Travis, Jenkins)
Confident with infastructure-as-code tools (Ansible, Terraform, Blueprints)
Confident with source control (Github, perforce)
Experience with cloud services and platforms (IBM Cloud, AWS, GCP, MS Azure)
General Linux knowledge
Network and security knowledge
Happy working using Agile practices including scrums, sizings, retrospectives, and playbacks
Experience with Kubernetes and building Operators
Programming expertise including experience with GoLang or Java
Experience with Cloud platforms (e.g. IBM Cloud, AWS, Azure, GCP)
Experience using CI/CD processes
Experience using source code and issue tracking repositories, in particular Git & GitHub
Preferred Technical and Professional Expertise
- Familiarity with REST APIs scripting
- Administrative experience with 1Password, AWS secret manager based password managers.
- Familiar with AWS Tech Knowledges such as Cloudwatch/lambda/S3/etc