Senior Software Engineer (C++, MacOS)

New
J
JobgetherSoftware Engineering
IndiaFull-TimeSenior
Salary not disclosed
Apply NowOpens the employer's application page

Job Details

Languages
English
Experience
5+ years
Required Skills
GitObjective-CSwiftC++CI/CDDebugging

Requirements

  • 5+ years of professional software engineering experience with strong hands-on expertise in C++ development within production environments.
  • Strong understanding of macOS internals, frameworks, and platform APIs, with experience working with technologies such as NSFileProvider and FSEvents.
  • Proficiency in Swift and/or Objective-C for developing and integrating macOS-native functionality.
  • Experience debugging complex, multi-threaded, or multi-process applications and diagnosing issues at the system or application level.
  • Familiarity with modern software development practices, including Git, code reviews, CI/CD pipelines, testing, and collaborative development workflows.
  • Strong written and verbal English communication skills.
  • Ability to work independently, manage priorities effectively, and take ownership in a remote or hybrid environment.
  • Comfortable joining and contributing to an established codebase.

Responsibilities

  • Design, implement, maintain, and enhance features for a native macOS desktop application, primarily using C++, with Swift and Objective-C for platform-specific integrations.
  • Investigate and resolve complex production issues through deep debugging across application components, multi-threaded processes, and macOS system APIs.
  • Work with engineering leadership and peers on architecture and technical design decisions, applying macOS platform best practices.
  • Develop clean, reliable, well-tested code and actively participate in code reviews, providing and incorporating constructive feedback.
  • Collaborate with product managers, QA engineers, and cross-functional teams to deliver high-quality features within agreed timelines.
  • Break complex technical problems into actionable tasks, manage priorities independently, and maintain ownership through implementation and delivery.
  • Contribute to improvements in engineering standards, internal tooling, development workflows, and overall product quality.
  • Document technical decisions, system behavior, processes, and implementation details to support knowledge sharing and future development.
  • Help maintain software that directly supports customers by balancing feature delivery, reliability, performance, and user experience.
View Full Description & ApplyYou'll be redirected to the employer's site
View details
Apply Now