Locations
- Bulgaria
- Georgia
- Lithuania
- Moldova
- Poland
- Romania
Company Background
Our customer is a leading online and mobile food-ordering and delivery marketplace with the largest and most comprehensive network of restaurant partners, as well as 32 million active diners. Dedicated to connecting diners with the food they love from their favorite local restaurants, our customer elevates food ordering through innovative restaurant technology, easy-to-use platforms and an improved delivery experience. Our Customer features over 320,000+ restaurants and is proud to partner with more than 225,000 of these restaurants in over 4,000 U.S. cities and London.
Project Description
The team is dedicated to creating mobile apps that impact the dining experiences of millions of people. You'll contribute to the design and development of innovative and complex features that revolutionize how diners order their food, allowing them to order ahead, pick up seamlessly, and save time. You'll work closely with the teams in the US, regularly collaborating and pushing your limits as you grow within our R&D site.
Technologies
- Objective-C
- Swift
- Foundation
- UIKit
- Swift standard library
- Design patterns and programming concepts
- Model-View-Controller (MVC)
- Asynchronous and multi-threading patterns
- Cocoa design patterns
- Object-oriented programming patterns and concepts
What You'll Do
- Write effective automated tests with little guidance;
- Follow and improve upon coding standards;
- Perform code reviews within your domain and apply quality standards to existing areas of the code base;
- Develop awareness of technical debt and will try, when possible, to avoid introducing more of it;
- Recognize and suggest opportunities for additional automation;
- Monitor, debug, and resolve moderate complexity performance, stability, and reliability issues;
- Able to understand security-related issues, design solutions, and execute them;
- Work comfortably within existing established processes;
- Come up to speed on new technical areas;
- Work with other team members to grow their understanding of the team's domain through code reviews, pair programming, or mentoring sessions;
- Help with onboarding new team members;
- Demonstrate awareness and sensitivity to differing perspectives and cultures and strive to take into account diverse opinions and experiences to help build an inclusive work environment;
- Communicate clearly and effectively with engineers and other stakeholders on technical tasks;
- Work effectively with engineers from other teams to achieve shared goals;
- Participate in team discussions and share context and background when interacting with others;
- Be able to manage expectations around the delivery of their work clearly;
- Have an understanding of their technical area and those adjacent to it and how they fit into the broader business;
- Consider how decisions made within their technical area may ultimately affect the product and customer;
- Know when to bring in additional data or expertise from other contributors and stakeholders when making a decision;
- Execute tasks within team projects, demonstrating ownership from conception to completion;
- Be able to tackle small to medium issues independently, and work with the team to split large, complex issues into more granular tasks;
- Be able to step up on tough issues and tackle new challenges;
- Be able to give project estimates and execute them;
- Propose changes that improve the efficiency of the team;
Job Requirements
- 5+ years' experience building iOS apps in Objective-C and Swift using Foundation, UIKit, and the Swift standard library;
- Skills in writing and testing (unit, automation, integration) high-quality, well-architected, and efficient code;
- Experience with MVC, asynchronous/multi-threading patterns;
- Experience with Cocoa design patterns, and other object-oriented patterns/concepts;
- Experience with designing and building complex UI hierarchies;
- Understanding of the iOS app lifecycle and Apple's recommended practices;
- Experience with backend or Android development will be a plus;
- Level of English - from Intermediate (spoken/written);
What Do We Offer
The global benefits package includes:
- Technical and non-technical training for professional and personal growth;
- Internal conferences and meetups to learn from industry experts;
- Support and mentorship from an experienced employee to help you professional grow and development;
- Internal startup incubator;
- Health insurance;
- English courses;
- Sports activities to promote a healthy lifestyle;
- Flexible work options, including remote and hybrid opportunities;
- Referral program for bringing in new talent;
- Work anniversary program and additional vacation days.