As a seasoned professional, I specialize in crafting robust and adaptable branching strategies. Whether it's a new studio or an established one, I bring a wealth of knowledge to the table. Here's how I can contribute:
Scalability and Longevity: When dealing with live service games, I recognize the paramount importance of scalability. My strategies are designed to withstand the test of time, ensuring seamless support for the game over years to come. I've successfully devised branching models that evolve alongside the game's growth trajectory.
Technical Proficiency: My proficiency extends to setting up Perforce streams for high-budget games. I understand the intricacies of version control systems and their impact on development workflows. I've adeptly managed integrations, ensuring smooth collaboration across teams.
Engine Branch Harmony: One of my key achievements lies in creating branching strategies that directly align with the engine branch. This minimizes disruptions, streamlines development, and fosters efficient teamwork. By working off the head of the engine branch, I maintain synchronization without compromising stability.
In summary, my expertise lies in architecting branching solutions that empower game development teams, enhance collaboration, and pave the way for sustained success.
Below is a very good video that I believe everyone in the industry (Software, or games) should watch!
Release Management & Triages
As a seasoned professional, I specialize in identifying scope issues during game development. Here's how I've contributed:
Leadership Triage: While working on Magic Legends, I led a critical triage group comprising game directors. Our mission: Streamline content and focus the game's scope to ensure timely delivery. By objectively assessing priorities, I determined what was crucial for the game's success.
Effective Communication: Clear communication is essential. I ensure the entire team is on the same page. Whether it's addressing live issues or managing patches, I identify necessary items. Weekly messaging to leadership ensures alignment and informed decision-making.
Quality Delivery to First Parties: Delivering a high-quality game to platforms like Microsoft, Sony, Epic, and Steam is paramount. I uphold standards, ensuring our game shines on these platforms.
Jira Mastery My expertise extends to managing Jira dashboards and creating automations. I proficiently handle tasks such as moving, closing, and creating tickets. When preparing for releases, I ensure all essential tickets are in place.
In summary, my expertise lies in navigating complex game development landscapes, making strategic decisions, and ensuring successful launches.
Jenkins CI/CD
Jenkins Automation:
I have extensive experience setting up and configuring Jenkins pipelines.
Proficient in creating and managing Jenkins jobs to automate various tasks.
CI/CD Workflows:
I’ve designed end-to-end Continuous Integration (CI) and Continuous Deployment (CD) workflows.
These workflows ensure seamless integration of code changes, automated testing, and deployment.
Pipeline Orchestration:
I orchestrate complex pipelines that include steps like:
Builds: Automating compilation, packaging, and artifact creation.
Tests: Running unit tests, integration tests, and performance tests.
Deployment: Deploying to staging or production environments.
Integration with Tools:
I integrate Jenkins with other tools such as:
Git: Automating builds triggered by code commits.
Docker: Building and pushing Docker images.
Artifactory: Managing artifacts and dependencies.
Parameterized Builds:
I create parameterized builds for flexibility.
Users can input values (e.g., branch names, version numbers) during job execution.
Notifications and Alerts:
I configure email notifications and Slack alerts for build status changes.
Ensuring timely communication to the team.
Security and Access Control:
I set up role-based access control (RBAC) to restrict permissions.
Securing Jenkins and managing user access.
Monitoring and Metrics:
I monitor build performance, track trends, and identify bottlenecks.
Using plugins like Prometheus and Grafana for visualization.
Error Handling and Recovery:
I handle build failures gracefully.
Implementing retry mechanisms and fallback strategies.
Documentation and Training:
I create documentation for Jenkins processes and best practices.