Job Description
You are an experienced software developer with plenty of experience developing mobile games/applications with Unity 3D. You enjoy tinkering with multiplayer game solutions and tech stacks and you are knowledgeable with the industry best practices for implementing real-time networking communications. You are a big fan of software design patterns, enjoy reading the occasional tech journals and sketching out application systems architecture diagrams and server communications sequence diagrams. You are results-driven, detail-oriented and always seek self-improvement.
You also have an interest in RESTful and server-authoritative multiplayer cloud server development and you 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 a full-time Intermediate Software Engineer (SDE2) in beautiful Vancouver, British Columbia.
Perks:
- Good extended health and dental plan
- Flexible work schedule
- Work remotely or work on-premise
- Studio conveniently located next to the a Skytrain line
You will:- Proactively collaborate with artists, producers, designers and engineers in an agile development environment
- Monitor, mentor and direct engineers under your technical supervision to maximize their potential, their efficiency, and their adherence to the studio’s code quality and system security standard
- Proactively gets up-to-speed on assigned game projects with minimal supervision
- Proactively gets up-to-speed on assigned work or game systems without supervision
- Assess visual, technical and design specifications and provide timely constructive feedback and reasonably accurate work estimates with minimal supervision
- Design and implement features and systems to spec and on time with minimal supervision according to the studio's code quality and security standards
- Own the project systems assigned or touched - its technical design and code quality; fix and improve its design and quality so that it’s aligned with the studio’s code quality and system security standards as needed
- Troubleshoot and fix difficult-to-reproduce and platform-specific technical issues in a reasonable time with minimal supervision
- Communicate and document technical designs and decisions effectively in verbal or written form, via diagrams, documents, and/ir code comments
- Update and expand your technical knowledge and skills to stay ahead of industry developments
Project responsibilities include:- Designing, developing and maintaining a Unity 3D multiplayer game client
- Troubleshooting and resolving systems and multiplayer communication issues in a timely and risk-mitigating manner
- Collaborating with the server software team and peer client engineers to improve system maintainability, performance, reliability and security
- Actively leading technical discussions and encourage engineers to share opinions and incorporate ideas
- Actively mentoring other engineers to help grow their technical and tech coding and design skills
- Conducting code reviews
- Participating in a rotational on-call live application maintenance team
You are a great fit for our team if you have…- 5+ years of professional test-driven software development experience
- 2+ years of experience developing Unity 3D applications utilizing the asset bundles / addressables system
- 2+ years of C# programming experience or equivalent object-oriented programming language
- 2+ years of practical experience with UML, clean code principles, and design patterns
- 2+ years hands-on experience troubleshooting performance and memory issues in a Unity 3D application
- 2+ years hands-on experience troubleshooting Android and/or IOS native application issues
- Experienced implementing client-server RESTful communications
- Knowledgeable on server-authoritative real-time client-server communications
- Experienced developing in-editor tools and pipelines for Unity 3D
- Experienced with Git or other revision control system
- Knowledgeable on data oriented programming and design
- Knowledgeable on multithreaded programming and design in .NET
- Excellent technical problem-solving and troubleshooting skills
- Strong cross-discipline communication and collaboration skills
- A proactive and forward thinking lifelong learner able to quickly familiarize oneself with complex legacy systems and code
- A detail-oriented mindset with a strong ability to multitask
Having the following skills is a plus…- Experienced with Agile software development practices (Scrum / Kanban)
- Experienced shipping mobile games/applications (Android, IOS)
- Experienced with Unity 3D’s JSON, UI, rendering, lighting, and animation systems
- Experienced with enterprise server development
Apply
Go Back