Development of High-Performance Desktop Apps with Half the Overhead
Client background
Our client is a global software company focused on developing creative, productivity, and utility applications. One of its flagship products, is a visual productivity tool that helps individuals and teams organize information, plan projects, and make better decisions through structured diagrams and mind maps.
Business challenge
The business challenge of our work on MindManager, an enterprise-grade desktop application, was to support and continuously evolve a large, multiplatform core shared between Mac and Windows versions, while maintaining native user interfaces for each platform.
How did we make it work?
The source code of the project was structured in a modular, loosely coupled architecture. The shared multiplatform core was written in C++, while platform-specific components were implemented using C++, C#, Objective-C, or Swift, depending on the target platform. Each module adhered to well-defined interfaces, allowing individual components to be easily replaced or extended without impacting the rest of the system. The codebase followed proven design patterns inspired by the Gang of Four book principles, which contributed to a stable, robust, and maintainable foundation suitable for building enterprise-grade applications.
Main technical challenges
Implementing a large multiplatform desktop application with a shared C++ core and native UIs (Windows/macOS) comes with several significant technical challenges.
01 Platform-Specific Components Integration

- Different UI technologies ( MFC/WPF/GDI+ vs. Cocoa/Swift UI ) require distinct implementations.
- Passing data between native UIs and shared C++ core must be done via language bindings or bridges.
- Synchronizing user experience and feature parity across platforms can be difficult.
- File dialogs, system notifications, drag & drop, networking stacks, accessibility — all behave differently per OS.
- Abstraction layers are required to unify access to OS APIs while maintaining platform-native behavior.
02 Build System Complexity & IDE Fragmentation

- Keeping build tooling, debugging practices, and developer workflows aligned is a coordination challenge.
- Ensuring consistent compiler flags, linking behavior, and 3rd-party dependencies across platforms is non-trivial.
- Developers on different platforms use different tools (Visual Studio vs Xcode).
- Managing cross-platform builds with CMake, Xcode, and MS Build can be error-prone.
03 Code Sharing Without Over coupling

- Shared modules should not "leak" platform logic into core.
- Enforcing boundaries between the core and platform-specific logic requires a solid understanding of SOLID principles and strict use of interfaces, adapters, and dependency injection.
- Design interfaces between modules that are flexible enough to support both platforms, yet stable enough to prevent ripple effects during feature evolution.
Value delivered by devPulse
By implementing a shared C++ core, we unified business logic across Mac and Windows platforms while maintaining native user interfaces:
- Reduced Development Costs
Less duplicated code across platforms means fewer engineering hours required.
- Faster Time-to-Market
Features developed once in the core can be shipped simultaneously on Mac and Windows.
- Lower Maintenance Overhead
Bug fixes and enhancements in the shared core benefit both platforms instantly.
- Consistent User Experience
Users on both platforms receive similar features and workflows, reducing support friction.
- Higher Perceived Product Quality
Enterprise customers value synchronized, stable, and native apps — boosting brand perception.
- Foundation for Future Growth
The architecture supports long-term scalability and potential expansion to other platforms.

Development Timeline
2017 - now
Team Composition
- 4 C++ Core developers
- 3 Windows Developers
- 3 Mac developers
- 5 Manual QA
- 1 Automated QA
Technology
- C/C++
- C#
- MFC
- .NET Framework
- COM
- Windows API
- QT
- Cocoa
- Objective C
- Swift
- App Kit
- Quartz
Key Making a Difference:
- Time-to-Market shortened by 20–30%
- Enterprise-grade stability
- 15–20% fewer platform-specific tickets
- Native feel and look
- Native look
- Development efficiency gained of 20–30%
Client Testimonial
"
I highly recommend Vlad and DevPulse as an outsourced development company. I had the pleasure of working with them, and I can confidently say that they are a team of dedicated, hardworking, and knowledgeable professionals. They possess a strong commitment to ensuring the success of their clients and are willing to go above and beyond to achieve it. DevPulse's work ethic is exemplary. They consistently demonstrate a high level of dedication and perseverance, ensuring that projects are completed on time and to the client's satisfaction. Their expertise in the development field is evident through the quality of their work and their ability to tackle complex challenges with ease.I highly recommend Anna and DevPulse to any organization looking for a partner that can deliver high-quality platforms fast, smart, and reliably. They bring engineering precision, strong architecture, and a partnership mindset that helps customers win.

Mark Beare
General Manager
Plan Your Product the Right Way — Before You Build







