You are a technologist with oodles of experience with .NET programming, Kubernetes, network / server development and Microservices architecture. You enjoy playing around with Dev Ops technologies like Terraform, Ansible, or Fabric. You are a big fan of software design patterns, enjoy reading the occasional tech journals and sketching out Cloud Architectural diagrams. You are results-driven, detail-oriented and always seek self-improvement.
You also have an interest in gaming, tinkers around with multiplayer games programming and are looking for a friendly game studio filled with like-minded individuals with a team who prizes integrity, transparency and personal growth.
Pocket Pinata Interactive is looking for such an individual to join our game development family as an Intermediate Software Engineer (SDE2) in beautiful Vancouver, British Columbia.
Design and implement technical specifications for server and client systems to spec and on time according to the studio's code quality and systems security standards.
Troubleshoot system issues and formulate solutions which minimizes the risk of side effects
Assess visual, technical and design specifications and provide timely constructive feedback and reasonably accurate work estimates with nominal technical supervision
Collaborate with artists, producers, designers and other engineers with nominal technical supervision in an agile development environment, effectively communicating technical designs where needed.
Work with client and server software teams to improve performance, scalability, durability and security
Proactively gets up-to-speed on assigned game projects with nominal technical supervision
Actively participate in project and resource planning meetings by offering thoughts and ideas
Actively lead technical discussions and encourage engineers to share opinions and incorporate ideas
Actively mentor less senior engineers to help grow their technical and tech management skills
Conduct code reviews and mentor other programmers
Participate in a rotational on-call program to troubleshoot server impacting issues.
You are a great fit for the position if you have…
5+ years of overall professional software development experience.
2+ years of .NET programming experience.
2+ years of experience operating/developing Server applications and APIs, solving for scale.
2+ years of industry experience working with AWS technology
Experience with Unity 3D’s build, Input, GUI and 2D systems
Knowledgeable on concepts of data oriented programming and design.
Knowledgeable on multithreaded programming and design in .NET
Knowledgeable on typical multi-tier architectures: web services, caching, application servers, load balancers, and storage.
Knowledgeable on software design, Microservices Architecture and REST Web services
Knowledgeable with IaaC (infrastructure as code) eg. Terraform.
Knowledgeable on containerization services (Docker / Kubernetes)
Knowledgeable on database technologies, in particular relational databases like MySQL, MSSQL, and ORMs like EntityFramework.
Knowledgeable with authoritative servers and communications (multiplayer gameplay / stock trading)
Experience with Agile Software Development methodologies & DevOps principles
Experience administering and deploying services with CI/CD tools.
A detail-oriented mindset with a strong ability to multitask
Knowledgeable in applying Clean Code Principles
A proactive, forward thinking and collaborative with others
Having the following skills is a plus…
Experience shipping games on mobile (Android, IOS)
Experience with regulated software (Bank compliance)
Have worked with game engines like Unity
Core understanding of game development, mechanics and structure.
Dev Ops experience, specifically with AWS, VMWare and Hashicorp based utilities.
Experience with Build pipelines and services deployment with Jenkins.
Familiarity with cloud networking infrastructure setup and management.
Knowledge of UML