These are a check list of things I have done which will help you make an informed choice.
- Care for all Users: Simplified & optimized multiple(10+) Video players to not lag while scrolling. Works well even on iPhone 5
- Robust Development: Refactored Network Layer intuitively with Generics. Immense internal satisfaction. Never ever thought about the network layer after that.
- Feature in Disguise: Carefully crafted UI to work across various dimensions, reduced UI bugs in the future.
- Organization Time & Cost saving: Implemented Xcode optimizations in 15 minutes. Saved 5 minutes everyday since last 6 months. CI builds finish faster by ~1.5 minutes (~12 minutes), reducing costs and delay, compounding over time.
- Developer Productivity: Saved developer fatigue, total 75 minutes every day, by reducing stand up time from 30 minutes to 5. This was achieved by encouraging written communication gradually.
- Eliminate Human Errors: Virtually eliminated a complete class of String API errors by using meta-programming.
- Eliminate Fussing over Small talks: Adopting a Style guide resulted in time spent discussing quality issues.
- Object Oriented Programming
- Functional Programming
- Protocol Oriented Programming
- Object Composition
- Function Composition
- Apple: UIKit, AVFoundation, ARKit, Foundation
- 3rd Party: Moya, IQKeyboard, SnapKit, SDWebImage, SVProgressHUD, Google Sign In
- Meta Programming: Sourcery, SwiftGen
- Read the
Documentation - Learned from the masters: Raywenderlich.com, Objc.io, Pointfree.co, Community
- Watched
Conference Talks - Watched a
Javascripttalk which helped solve a problem inSwift - Read
Javascriptbook to learn Functional Programming, and port concepts toSwift - Learned UIKit from a book written in
Objective C - Learned common design patterns
- Discover / Develop a
Design Pattern - Conduct a
talkexplaining that Design Pattern -
Search Stack overflow for errors in programming
- Pair Programming with Seniors (that was the best day of my entire programming career)
- Suggesting techniques at code reviews
- Prefer
Compassionate CodeReview guidelines -
MentorJuniors -
Menteeto Seniors
-
Notified roadblocksahead of time - Preferred
Written communication - Suggested efficient
alternatives - Encouraged Discussion where needed, avoid arguments
-
Cut down StandUp timefrom 30 minutes to 5