- Release Management
- Software Development
Nintendo of America Inc.
The worldwide pioneer in the creation of interactive entertainment, Nintendo Co., Ltd., of Kyoto, Japan, manufactures and markets hardware and software for its Nintendo Switch™ system and the Nintendo 3DS™ family of portable systems. Since 1983, when it launched the Nintendo Entertainment System™, Nintendo has sold more than 4.7 billion video games and more than 740 million hardware units globally, including Nintendo Switch and the Nintendo 3DS family of systems, as well as the Game Boy™, Game Boy Advance, Nintendo DS™ family of systems, Super NES™, Nintendo 64™, Nintendo GameCube™, Wii™ and Wii U™ systems. It has also created industry icons that have become well-known, household names, such as Mario, Donkey Kong, Metroid, Zelda and Pokémon. A wholly owned subsidiary, Nintendo of America Inc., based in Redmond, Wash., serves as headquarters for Nintendo’s operations in the Americas. For more information about Nintendo, please visit the company’s website at http://www.nintendo.com .
DESCRIPTION OF DUTIES
Partners with development teams by providing infrastructure assistance and guidance from the early phases of product development, including the development of software and processes to assist developers in infrastructure-related workflows (such as build, release and deployment automation).
Designs and implements infrastructure for new and existing products, ensuring all business policies for security, supportability and cost are met, while enabling efficient deployment of products through automated means (such as configuration management and continuous deployment).
Discover Service Level Indicators, define Service Level Objectives, measure and reduce Toil, and monitor and instrument platforms to measure scalability, reliability and efficiency.
Submit software fixes for deficiencies within area of expertise or operational responsibility.
May be involved in requirements gathering, prototyping, architecting, building and implementing test plans, performing quality reviews, and triaging or fixing operational issues, at all phases of the product lifecycle.
Participates in project planning discussions to include the formulation and delivery of cost and labor estimates and options for assigned projects
Works with product development and infrastructure teams to define, gather, and document technical and functional requirements for new and existing products, and ensure that the same are being adhered to during initial development and product maintenance
Designs and implements solutions to provide continuous integration, automated deployment, and configuration management of internally or externally developed applications
Designs and implements automated testing solutions to ensure the continued integrity and quality of products and solutions
Identify and monitor application health and Key Performance Indicators (KPIs) for new and existing products using tools such as Nagios or Zenoss, developing automated processes for same
Performs peer review of solutions developed by others, and potentially other teams, ensuring that best practices and internal standards are being followed, and recommends alternatives when appropriate
Serves as a liaison with development and infrastructure teams; may also serve as liaison with external vendors in coordination with project managers
Analyze new and existing products for performance and efficiency improvements, both as part of a structured release process, and as an ongoing process
Integrates internally developed products, externally developed products, and mixtures of both, to create working solutions from multiple disparate parts
Participates in 24x7 on call cycle to support and troubleshoot products and solutions in multiple environments.
SUMMARY OF REQUIREMENTS
Typically requires a minimum of four years of related experience in software development and system engineering technologies, patterns and practices.
Experience participating in or leading the planning and execution of small to moderately complex projects, alone or as part of a team
Proficiency in two or more programming languages (such as Python, Java, Ruby, C#, C/C++, etc); experience writing, documenting, bundling and publishing code for reuse by others is extremely helpful.
Proficiency in the setup, configuration, maintenance, and upgrading of one or more server operating system families (Linux, Windows, BSD, etc)
Proficiency with server prototyping and virtualization tools and platforms (vagrant, docker, AWS ec2, etc)
Proficiency with version control tools (svn, git, etc)
Some experience with SDLC processes (code review, release management, etc) and automation of same (continuous integration, continuous delivery)
Some experience with networking equipment, protocols (TCP/IP, SSL, etc) and troubleshooting tools (Wireshark, etc)
Bachelor of Science degree in Computer Science, Computer Engineering, Electrical Engineering, Information Technology, Information Systems, Industrial Engineering, or related field; or equivalent combination of education and experience.
We are an equal opportunity employer of individuals with disabilities and protected veterans....valuing diversity…celebrating strengths.