jobapplier

Staff Software Engineer iOS

Procore

Skills

Required

  • iOS
  • Swift
  • Objective-C
  • Object Oriented Program
  • profiling
  • iOS performance tracking and analysis
  • regression suites
  • regression testing
  • iOS’s architectural
  • CoreData
  • UIKit
  • SwiftUI
  • MVC architecture

Preferred

  • performance frameworks
  • database performance
  • rendering
  • network

We’re looking for a iOS Staff Engineer to join Procore’s Product & Technology Team.

Our Core Excellence Platform Team plays a crucial role in ensuring our applications are high-performance, reliable, and scalable. We are looking for a talented and passionate Staff iOS Engineer to join our team and help us achieve our vision of mobile development excellence. As a Staff iOS Engineer, you’ll partner intimately with our engineering team, translating their fundamental needs into technological solutions.

This position will be based in our Bangalore India office .

About Procore

  • Procore software solutions aim to improve the lives of everyone in construction and the people within Product & Technology are the driving force behind our innovative, top-rated global platform.
  • We’re a customer-centric group that encompasses engineering, product, product design and data, security and business systems.
  • We are dedicated to creating exceptional mobile applications that provide outstanding user experiences.
  • We’ll provide you with the tools and resources needed to achieve extraordinary results that render a significant impact extending beyond the boundaries of traditional engineering roles.
  • Apply today!

Responsibilities

  • Enable our teams to deliver complex projects at speed with high-quality bar.
  • Contribute to our iOS app with a focus on performance frameworks and regression testing, including memory usage, database performance, rendering, battery, network.
  • Investigate performance issues, identify hotspots/areas of improvement, identify benchmarks that should be maintained and regression tested against.
  • Collaborate closely with other mobile developers to understand and develop solutions that address our needs and pain points.
  • Mentor and knowledge share within the wider mobile engineering org.
  • Help set the standards for your teams, providing technical and procedural advice, and decision-making Directly take on tasks of substantial complexity and scope.
  • Develop fellow teammates by conducting code reviews, providing mentorship, pairing, and training opportunities
  • Have a significant impact that extends beyond the boundaries of your team, on projects affecting scalability, performance, and new value delivery
  • Identify large technological issues and opportunities in your area of responsibility, and organize your teams to solve these issues
  • Escalates issues when necessary and accountable for the long-term health of their systems and codebase
  • Able to directly engage in proof-of-concept and other speculative work where direct technical exploration is the most rapid path to clarity, discovery, or impact.
  • Contributes to and reviews technical documentation and decisions relevant to their business concern
  • Can articulate the 'why' behind current work priorities across their business concern and understand when to accrue and when to pay down technical debt
  • Actively promotes a culture of psychological safety within their team by engaging earnestly and openly, accepting challenges, and modeling appropriate behavior.

Requirements

  • Bachelor’s Degree in Computer Science, Engineering, related field, or equivalent work experience 8+ years of Engineering Experience (5+ years of experience building iOS applications using
  • Swift and Objective-C and 3 years spent in an Object Oriented Program and/or
  • Functional Programming role)

Experience doing performance profiling and analysis using

  • Xcode studio profiling tools.
  • Experience building frameworks and tools for native iOS performance tracking and analysis.
  • Experience building regression suites and synthetic performance regression testing.
  • Excellent communication skills, working across teams to build common solutions.
  • Broad and deep understanding of iOS’s architectural components (CoreData, UIKit, SwiftUI, etc.) and the MVC architecture, experience with MVVM is a plus
  • Experience working with RESTful APIs using JSON Understanding of multi-threading, concurrent programming, memory management, and/or performance optimization

Experience working with offline available application experiences

  • Proven working knowledge of software engineering techniques, methodologies, ​and practices
  • Exceptional communication skills and the ability to work closely with others both within and adjacent to the existing team
  • Experience leading large initiatives with the ability to course correct as needed
  • Ability to consistently evaluate current technical approaches to continue to be industry best-of-class