Job Description :
IOS Developer
Portland, OR
6+ Months

Mode of Interview: Phone & Face to Face (Highly Prefer) but open for Skype / WebEx

Job Description:
This role is primarily an iOS developer who will be working on native mobile apps and components for client''s 90 million customers and 35 thousand employees. A successful candidate will have a strong computer science background, and deep knowledge of functional programming in Swift and/or experience in other functional programming languages. The ideal candidate is well along on a technical career path, moving towards the Principal Engineer role. Duties Create intuitive, custom UI controls and interfaces that match our great user experience. Work on API integration to evolve application capabilities. Collaborate with cross-functional teams to define, design, and ship new features. Write unit and acceptance tests to validate robustness, including edge cases, usability, and general reliability. Be a role model for iOS engineers on the team, providing deep iOS expertise and coaching. Identify short and long-term opportunities in our mobile technology platform that will drive improvements in performance, scalability, reliability and re-usability. Troubleshoot production problems, when requested, and ensure that a proper resolution is identified and implemented in a timely manner.

Technical Skills Thorough knowledge of iOS design elements and mastery of the Swift 3.x/4 language. Experience consuming RESTful interfaces. Experience with mobile push notifications, including Firebase Cloud Messaging (FCM) and Apple (APNS Solid working knowledge of the iOS runtime, Xcode IDE and OS X development tool-chain. Experience/interest in location based services. Strong foundation in computer science and software design/architecture. Passion for ensuring high quality architecture and customer experience. Prior experience designing and launching highly rated native iOS apps to a large consumer audience is a big plus. Culture and Team Fit Collaborate with other team members in a humble and open source manner and value team contributions over individual contributions Communicate with other team members on your intentions and your issues so we can help when you need it and so we can all benefit from your insights. Design robust solutions to hard problems that also take into account scale, security, reliability, and cost. Document what gets built so others can carry the torch while you are on your much deserved vacation. Know the process of software development so well you can do it in your sleep. Test what you fact we want you to write tests first.if you can! Re-use what we already have built – unless you have a better which vocal and demonstrate why your solution is better/faster/cheaper. Other helpful skills / experience: Test Automation Tools. Ideal candidate has worked with Functional and Unit test based frameworks to develop automated tests (Jasmine, Cucumber, etc) Continuous Integration (CI) / Continuous Deployments (CD Ideal candidate has worked on projects with CI/CD tools (Ansible, Jenkins, Bamboo, Gitlab-CI, etc) Container Technologies. Ideal candidate has worked on projects with container based solutions (Docker, CoreOS, etc) Full stack javascript experience, exposure and/or strong interest in NativeScript, Angular 2/4+. Reactive Programming. Our team uses Reactive Programming techniques in our mobile application and candidates would do well to familiarize themselves or have experience with Reactive.

Bachelor’s degree in Computer Science or a related discipline, at least seven, typically 09 or more years of solid, diverse work experience in IT with a minimum of 06 years experience application development, or the equivalent in education and work experience