Hi, I'm Costa! I’m a product-minded mobile engineer with over 15 years of experience building across the stack. My career has been focused on owning entire ecosystems -- from native mobile clients to the backend services that power them -- with an emphasis on technical craft and long-term maintainability.
My engineering philosophy is centered on building systems that are predictable, scalable, and easy to reason about.
- Testing First: I treat automated testing as a core part of the development process, not an afterthought. I advocate for a balanced strategy of unit, integration, and UI tests to ensure that business logic is verified and regressions are caught early.
- Fundamental Dependency Injection: I believe in a strong understanding of DI fundamentals. While DI frameworks have their place in larger codebases, I prefer an approach where dependencies are clearly defined and manually injected where possible to keep the architecture transparent, decoupled, and easy to test.
- Unidirectional Data Flow (UDF): I utilize reactive, UDF patterns to maintain a single source of truth for application state, which significantly reduces side effects and state-related bugs in complex mobile UIs.
- Modular Architecture: I prioritize clear boundaries between networking, data persistence, and the UI layer to allow teams to move fast without accumulating technical debt.
I built these "Library" apps as architectural blueprints to demonstrate how I approach a modern mobile project from the ground up. While the features are straightforward, the implementation is designed to handle production-level complexity.
MyLibrary-iOS | MyLibrary-Android
These sister apps showcase a consistent architectural philosophy across platforms:
- Tech: SwiftUI / Jetpack Compose with Combine / Coroutines.
- Patterns: Repository pattern for managing local persistence and remote API data.
- Quality: Comprehensive testing suites demonstrating how to verify business logic and UI state.
- Key Focus: Robust error handling, loading state management, and clear dependency management.
I'm always happy to discuss mobile architecture, testing strategies, or the trade-offs of different technical approaches. If you're interested in my work or have questions about these sample projects, feel free to reach out.


