About the position
The purpose of a DevOps engineer is to facilitate collaboration between development and operations teams, enabling them to deliver high-quality software more efficiently and reliably. DevOps engineers achieve this by improving collaboration, automating processes, enhancing deployment frequency, ensuring reliability, optimizing performance, managing infrastructure, ensuring security, and driving continuous improvement.
Driving Continuous Improvement: Continuously evaluating and improving processes, tools, and practices to enhance the overall software development lifecycle.
- Issue Triage and Resolution:
- Perform triage on all logged issues to identify and assess them.
- Resolve issues quickly, understanding the root cause to prevent recurrence.
- Communicate resolution back to end users within SLA.
- Train users as necessary.
- If development is required, ensure the issue is understood, resolved, and tested.
- Facilitate service transition to avoid key man dependencies.
- Ensure the team is aligned with updated knowledge base areas.
- Involvement in DevOps:
- Deploy declarative changes between orgs and version control.
- Monitor changes made to orgs and roll back mistakes.
- Use automated DevOps processes to test, validate, and push code changes.
- Deploy large Salesforce changes for whole business units.
- Create standardized release models ("develop once, deploy anywhere").
- Set up Vuma for future success with faster, safer processes and workflows.
- Develop agile DevOps practices and source-driven workflows for seamless contribution.
- Monitor DevOps performance and increase the frequency and reliability of releases.
- Track KPIs for teams and report on DevOps ROI.
- System Monitoring and Management:
- Monitor system health and manage fallout.
- Perform daily checks and report issues according to process and SLA.
- Cross-Functional Collaboration:
- Work with cross-functional teams from various departments to resolve issues.
- Evangelism and Mentorship:
- Be an evangelist, mentor, and trainer of best practice DevOps processes and procedures to Vuma technical teams.
- Knowledge Building:
- Build understanding of metadata types and keep an eye on Salesforce's quarterly releases.
- Get involved with the Salesforce DevOps community for lessons learned.
- Source Control Management:
- Focus on how to commit changes to source control, open pull requests, review, and merge each other's work.
- Drive optimal use of CI/CD tool (e.g., Gearset).
- Data Deployments:
- Run data deployments (sandbox seeding) to test features.
- Code Quality and Testing:
- Review developers' code coverage (using automated unit testing) and code quality (using static code analysis).
- Ensure newly developed features and customizations meet user, technical, and business requirements.
- Execute tests, including UI testing, and ensure code conforms to best practices, data compliance, and security.
- Disaster Recovery:
- Own the team's recovery from mistakes and disasters, including rollbacks, hotfixes, and restoring from backups.
- Drive Disaster Recovery Strategy and Testing once a year.
- Documentation:
- Write reports, document root causes, support guides, and any artifacts required to retain knowledge.
- Process Design and Scalable Solutions:
- Design processes that are efficient and solutions that are scalable.
- Communication Skills:
- Be an excellent written and verbal communicator with the ability to learn quickly.
- Documentation:
- Prepare comprehensive documentation detailing DevOps processes and procedures.
- SLA Management and Cost Reduction:
- Continuously challenge SLAs to the minimum to ensure optimal customer experience and same-day activation.
- Drive cost reduction to a minimum.
- Team Performance Improvement:
- Facilitate and drive retroactions to improve team performance and metrics.
- Tertiary Qualification:
- A suitable tertiary qualification related to computer science, information technology, or a related field.
- Experience:
- 2-5 years of experience in Salesforce administration, release management, or developer experience. Experience with Gearset or a similar tool is preferred.
- Programming Skills:
- Proficiency in reading, interpreting, and writing Apex, SQL/SOQL/SAQL code is required.
- Salesforce Certification:
- Experience within Salesforce Sales and Service Cloud, preferably with certifications such as Certified Administrator and Certified Developer.
- Deployment Tools:
- Experience with deployment tools like Gearset for deploying changes in Salesforce environments.
- Technical Skills:
- Experience with languages (Apex), database technologies (SQL), scripting (Shell, batch), Salesforce deployment (SFDX, Change sets, Salesforce Metadata API), version control tools (Git, Bitbucket), build automation tools (AutoRabit, Bamboo, Jenkins, Maven, Apache Ant), and project tracking tools (Jira).
- Additional Skills:
- Experience in any programming language (e.g., Python, Java), test automation, AWS cloud, Azure cloud, code coverage, and unit testing would be beneficial.
Overall, the ideal candidate should have a strong technical background, experience with Salesforce technologies, and a willingness to learn and adapt to new tools and technologies in a fast-paced environment.- Technical Skills:
- Proficiency in scripting languages (e.g., Shell, Python) for automation tasks.
- Experience with configuration management tools (e.g., Ansible, Chef, Puppet) for managing infrastructure.
- Knowledge of containerization technologies (e.g., Docker, Kubernetes) for deploying and managing applications.
- Familiarity with cloud computing platforms (e.g., AWS, Azure, GCP) for deploying and managing infrastructure.
- Experience with CI/CD pipelines (e.g., Jenkins, GitLab CI/CD, Azure DevOps) for automating software delivery processes.
- Understanding of version control systems (e.g., Git, SVN) for managing codebase changes.
- Problem-Solving Skills:
- Ability to troubleshoot complex issues and implement effective solutions.
- Strong analytical and critical thinking skills to assess and address challenges.
- Collaboration Skills:
- Excellent communication skills to effectively collaborate with development, operations, and other teams.
- Ability to work in a team-oriented environment and contribute to team goals.
- Adaptability:
- Willingness to learn new technologies and adapt to changing environments.
- Ability to quickly grasp and apply new concepts and tools.
- Project Management Skills:
- Ability to manage multiple projects simultaneously and prioritize tasks effectively.
- Strong organizational skills to manage deadlines and deliverables.
- Attention to Detail:
- Ability to pay close attention to detail to ensure accuracy in tasks and processes.
- Commitment to maintaining high-quality standards in all work.
- Continuous Improvement:
- Desire to continuously improve processes and practices to enhance efficiency and productivity.
- Willingness to explore new ideas and approaches to optimize workflows.
- Customer Focus:
- Strong commitment to meeting and exceeding customer expectations.
- Ability to understand and address customer needs and concerns.
- Security Awareness:
- Understanding of security best practices and principles.
- Ability to implement security measures to protect systems and data.
- Team Leadership:
- Ability to lead and motivate teams to achieve common goals.
Strong interpersonal skills to build and maintain positive relationships within the team and across departments.
Desired Skills: