Senior Mobile Software Engineer (IOS)

Location: Asia-Pacific - Singapore
BU/Function: Software BU
Seniority: Manager & Professionals
Job Code: 1282

Job Responsibilities

This is a mobile software engineering position in which you will be joining a small team of engineers to help develop software projects that provide the best experience for gamers. In this role you will be responsible for the design and implementation of code and oversee test automation for your project(s). As part of the engineering team, you will also assist with other development processes and requirements as needed.

  • Build reusable iOS components & Frameworks/SDKs
  • Writing clean, readable, and testable code
  • Collaborate with Product management, UI/UX and Engineering team, to ship new features
  • Publish applications to Appstore and TestFlight\r\n
  • Ensure the performance, quality and responsiveness of applications & Frameworks/SDKs
  • Continuously discover, evaluate, and implement new technologies to maximize development efficiency
  • Self-initiative and be able to independently craft project solutions by applying solid Object-Oriented-Design principles
  • Keep iOS Applications up to date with the latest Swift & iOS versions
  • Open to explore cross platform mobile Apps development technologies, such as React native, Flutter etc.
  • Work with the QC team to help design test plans and support testing tools and processes
  • Participate in creating technical specifications and performing code reviews with other engineers
  • Comfortable working remotely and collaborating with the team online when required
  • Generate and maintain documentation as needed

Pre-Requisites

  • 6+ years of extensive experience in Object-Oriented software development.
  • 6+ years of experience building complex iOS applications using Objective-C/C++/Swift with the iOS SDK and other frameworks.
  • Extensive experience with software design patterns
  • Solid understanding of the full mobile development life cycle
  • Experience working with workspace type iOS projects supporting multiple targets and test cases
  • Deep knowledge or Storyboards/SwiftUI & Xibs
  • Deep knowledge of offline storage, keychain management in iOS
  • Experience working with iOS frameworks such as Core Bluetooth, Core Data, Core Animation, Core Graphics.
  • Experience with third-party libraries and APIs
  • Experience working with REST API, JSON and XML formats
  • Significant experience with unit level testing, writing test plans, scripts and generating testable code
  • Extensive experience using common SCM/RCS tools like SVN, GIT, Mercurial, etc.
  • Strong oral and written communication skills
  • Enjoys working in a collaborative, technically challenging environment with rapidly changing requirements
  • A scrappy, self-motivated, entrepreneurial attitude that gets high-quality projects done quickly

Special Considerations

  • A passionate gamer (console, pc, or mobile), the more hardcore the better
  • A customer of Razer who understands our culture and brand, and is familiar with our products
  • Prior experience in QC/QA software testing for products on mobile platforms
  • Experience debugging multithreaded applications or systems
  • Experience working with Javascript
  • Knowledge of internet protocols and services and writing code to support them
  • An advanced Degree in computer science, software engineering, quality assurance, or similar