
Karim Alweheshy
Verified Expert in Engineering
Mobile App Developer
Munich, Bavaria, Germany
Toptal member since November 30, 2020
Karim has been developing mobile apps across many industries for more than seven years. He applies in-depth knowledge and best practices to develop new solutions and solve a wide range of software problems, primarily in Apple environments. Karim excels when taking on new challenges and solving complex issues for his clients, and he thrives in a team environment.
Portfolio
Experience
- Git - 9 years
- iOS - 8 years
- Objective-C - 8 years
- Xcode - 8 years
- Agile - 7 years
- CocoaPods - 6 years
- REST - 6 years
- Swift - 5 years
Availability
Preferred Environment
Apple TV, iWatch, iPad, iPhone, MacBook, Git, Xcode
The most amazing...
...project I've done was to analyze, plan, and refactor a 10-year-old legacy system belonging to the largest mail provider in Germany.
Work Experience
Full-stack Developer
Choco Communications GmbH
- Modularized the iOS application into small modules. This increased team efficiency, decreased build times, decoupled dependencies, and raised the bar for all developers to focus on what matters.
- Enhanced existing CI tools to lint, format, and run tests for all modules.
- Developed code generation tools to do the heavy lifting for developers.
- Tackled and resolved a complicated performance issue, thereby making the app butter smooth for users.
Senior Mobile Developer
United Internet AG (Freelance)
- Eliminated persistent bugs in an iOS app by analyzing the code and developing a long-term plan to approach the architectural and code quality problems.
- Derived the plan to introduce a CI/CD system to improve the team workflow by delivering bi-weekly, incremental product releases.
- Covered the app's main functionality with UI tests to serve as live documentation for the app's requirements.
- Injected all dependencies, which reduced the runtime of the UI tests from 12 minutes for 30 tests to 3.5 minutes for 150 tests by removing all the work dispatches and all the waits and parallelizing all of them.
- Pinched parts of the code, enabling me to rewrite the functionality in new frameworks that maintain over 90% unit test coverage.
- Injected the new frameworks into the views by using dependency inversion to strip the business layer into strategies. UI tests helped to ensure that everything went smoothly.
- Produced an incremental release plan for our users spanning two months but released everything in less than a week.
- Significantly improved performance: The number of bug reports plunged, new bugs and their fix times were substantially lower, and writing unit and UI tests for new features became the norm.
- Deleted more than 70,000 lines of Objective-C legacy code for more than 17,000 fully tested Swift frameworks.
Senior Mobile Engineer
Ryd
- Collaborated in a team to maintain existing features and develop new ones on a mobile app that connects drivers to their cars.
- Rewrote big parts of the app from Objective-C to Swift. Removed dependencies and decouples and wrote unit tests.
- Implemented complex charts using low-level rendering APIs and developed new features using Apple Maps.
- Migrated from the use of Google Maps to open maps on Android.
Mobile Engineer
Salesfive Consulting GmbH
- Co-developed a greenfield project to help salespeople track their pipelines from leads to closed deals and help managers get more insights from their subordinates' work.
- Designed the APIs and models by mocking them on the iOS client.
- Wrote an agile skeleton on the app that was as flexible as the fast-paced changes of the newly developed product.
DaWanda GmbH
Mobile Engineer
- Oversaw the agency's work in developing the MVPs for both Android and iOS while serving as a first member of the mobile team.
- Played a key role in expanding the team by adding staff, directing the agency to take over the project, ensuring a smooth transition into the company, and onboarding new members.
- Developed a new monitoring and testing guild and recruited members from other teams to conduct workshops for tech personnel on best practices for testing and monitoring.
Mobile Engineer
Westwing GmbH
- Planned and executed a rewrite for the app to modernize the technologies used.
- Refactored the app into a universal app that works well on iPhones and iPad, regardless of screen size.
- Added accessibility features, such as VoiceOver and dynamic font sizes, to help people with disabilities or older age to better explore the app and assist our QA automation engineers to write better tests by avoiding XPath.
Experience
eMobility for iOS and iPadOS
https://apps.apple.com/de/app/ryd-smart-tanken-autofahren/id913102198As an iOS mobile developer, I rewrote more than 60% of the app to Swift, decreased dependencies, and added tests. I also developed amazing new features. The most challenging were those that required low-level access to rendering capabilities on both CPU and GPU. But it was also lots of fun to develop for Google Maps, open maps, and Apple Maps.
Education
Master's Degree in Games Engineering
Technical University of Munich - Munich, Germany
Bachelor's Degree in Games Engineering
Technical University of Munich - Munich, Germany
Skills
Libraries/APIs
CocoaPods, REST APIs
Tools
Xcode, Git
Languages
Objective-C, Swift, TypeScript
Paradigms
Testing, Agile, REST
Platforms
iOS, Web, iWatch, Apple TV
Frameworks
Core Data
Other
MacBook, iPad, Software, System Requirements, Code Architecture, Rendering, Robotics, Game Engine Programming, Architecture, Formal Logic, iPhone, Game Development, Graphics, Games
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring