Sr. Ios Developer Resume
San Francisco, CA
SUMMARY
- Highly Experienced in the design, development, testing and deployment of iOS Applications utilizing multiple versions of XCode and iOS
- Experience in the design, development, testing and deployment of software applications and extensions on Windows and Linux using tools like Java, .NET, C/C++, CUDA C, SQLServer, PL - SQL
- Experience using third party APIs like Oracle Agile 9 and Oracle PLM for Process APIs
- Experienced in designing, developing and implementing Applications Network Communications using TCP Sockets, WebServices (SOAP/XML and REST/JSON)
- Experience using well known Online Version Control Platforms GitHub and Assembla
- Experienced in aspects of programming like Memory Management such as MRR and ARC
- Expertise in multithreading using GCD, Operation Queues and NSURLConnection
- Experience with Persistent Storage using SQLite, Core Data and NSFileManager
- Experience with Core Media, AVFoundation, Open GL ES, CorePlot frameworks
- Apple’s Best Practices enthusiast in the different stages of Software Development
- Experience with XCTest and Instruments
- Scientific internships in Oxford University and Stanford University
- Academic exchange in the University of Toronto
- Academic experience implementing and deploying High Performance Computing solutions using libraries like OpenMP and MPI
TECHNICAL SKILLS
Languages: Objective-C, C++, Java, Android SDK, HTML5, CSS3, JQuery, Python, XML
Frameworks / Tools: Cocoa Touch, Cocoa Pods, CoreLocation, CoreGraphics, Instruments, AVFoundation, UIKit, MapKit, Keychain, UIDynamics, AFNetworking, RESTKit, Tomcat, Apache, Jira, Accelerometer, UI API, Google Maps Android API, Android Development Tool (ADT), Android Virtual Device (AVD)
Web Services: JSON, RESTful, SOAP
IDEs: X-Code, Android Studio, Eclipse, Netbeans, Visual Studio
Databases: MySQL, SQLite, Oracle, CoreData
Operating Systems: Windows, Linux
Change Management Tools: SVN, Git
Methodologies: Agile/SCRUM, Waterfall
PROFESSIONAL EXPERIENCE
Confidential, San Francisco, CA
Sr. iOS Developer
Responsibilities:
- Redesigned, refactored and implemented 2 new versions of an existing Objective C API that wrapped (Using the facade design pattern) around two major AR Frameworks: Confidential and Confidential
- Decoupled the API by structuring and simplifying our interface to Confidential following the Facade design pattern.
- Followed the initial design around Blocks for callbacks, which was already using delegates and protocols.
- Reduced the flow complexity since blocks were harder to track at runtime.
- Implemented a CocoaPod repository for the wrapper to be included in other projects using CocoaPods dependency management.
- Refactored an existing internal app to use the wrapper API and explore NantWorks.
- Used Heroku as backend to change the overlay elements before they are rendered on top of the camera feed.
- Used CMS for creating and managing the content available to the AR API.
- Followed an Agile Methodology approach in weekly pod meetings, with a team of two developers, a UX designer and a project manager, to discuss progress and technical issues.
- Used CocoaPods to include our internally developed API.
- Worked closely with Confidential for new API functionality for our exploration of their API for new use cases, code reviews, and troubleshooting.
- Overcame challenges, such as, the implementing functionality of an only privately available API with no available information but only direct contact.
- Implemented an AR module for Target Wish List app currently on the Play Store (Android)
- Implemented Confidential Framework on Android.
- Used AREL (built on top of JavaScript) language for content creation and management.
- Implemented UI changes for Tablet and Phone using values.xml and Density Independent Strategies like providing drawables for every density group.
- Agile approach with a daily call with delivery managers and developers in a distributed team between SF, MLPS and ATL.
- Successfully completed the project within the tight timeline of 10 weeks for the whole project including requirements, development and QA fixes, with a geographically distributed team across the US.
- Used JIRA for QA bug fixing tracking and features missing management.
- Fixed crashes reported via HockeyApp, which allowed us to receive a stacktrace of every crash the app has run into by any end user.
- Conducted an Android Wear exploration by implementing a Shopping List app for Android Wear (Android)
- Gathered user stories by brainstorming with the team and separated them into releases.
- Implemented syncing between phone and watch using Android Wear APIs like DataApi, MessageApi and NodeApi.
- Input comes from the voice commands via Google Speech Recognition Activity, is cached on the watch and synced to the phone for sending it to Wit.ai and get back the response with the different important pieces of information.
- Implemented Voice Commands using Google Speech Recognition Activity.
- Uploaded the identified string to Wit.ai for online Natural Language Processing API to recognize the intent, the names and quantities of the products.
- Utilized the AND keyword to make it possible to mention more than one item in the same voice command.
- Implemented offline persistent storage that syncs automatically with the cloud using Parse.com.
- Led feedback sessions with members of the internal and external teams.
Confidential, Barrington, IL
Sr. iOS Developer
Responsibilities:
- Designed and implemented the application using AVFoundation from the UI to the application logic.
- Used the AVAssets to have access to the user’s library and allow the user to choose an input video file from the gallery
- Used AVFoundation framework to show the video timeline as a series of still images captured from the video file at different timestamps.
- The user is allowed to control brightness and contrast through logic using NSNumber and UIKit.
- Implemented logic to export the final video to the user’s library using AVAssetExportSession.
- Used AVFoundation to combine the video segments selected by the user into an AVMutableComposition that can then be saved.
- The user is allowed to add slides with text as part of the video and control the duration, color of the background and size and color of the text.
- Fixed bugs through personal testing using XCTest
Confidential
Sr. iOS Developer
Responsibilities:
- Worked on all areas of application from the logic to UI
- Designed for iOS 7 using Xcode 5
- Designed, prototyped and test functional demo that provided access to User’s Action Items list and Materials and Facilities profile information.
- Designed and implemented SOAP Web Services communication between the server and the iPad client.
- Used Oracle PLM for Process API to design and implement Web Services communication protocol
- Designed 2-step security access process.
- Parsed Web Services response via NSXMLParser
- Developed content driven UI that will change depending on the response by the server
- Used persistent storage to save user preferences on configurable aspects of the UI
- Implemented UI based of wireframes
- Implemented Core Plot to draw charts of content statistics
- Fixed bugs found by QA
Confidential, New York, NY
Developer
Responsibilities:
- Developed a Web-based PX for a custom BOM report that uses JSP on Apache Web Server to browse the BOM hierarchy and extract data
- Developed 3 PX to automate the creation of PQM (Product Quality Management) objects like Change Requests, Investigations and Non-Conformance Reports to simplify the user workflow when doing QA
- Developed integration tools on PLSQL to automate the item management information transfer from Oracle A9 with Oracle e-Business Suite (PDH) that acts as a product central repository
Confidential
iOS Developer
Responsibilities:
- Designed, prototyped and implemented application from logic to UI.
- Ported existing custom TCP sockets libraries available for the Server.
- Built and implemented the same Boost C++ libraries as the server.
- Implemented a custom low-level messaging protocol that allowed the iPad client to interpret incoming data and display parameters.
- Used OpenGL ES 2.0 to provide the application with a locally rendered wireframe mode and enable a similar 3D experience happening on the display wall.
- Used UIGestureRecognizer to provide the user with remote panning, zooming and rotating gestures to interact with the model.
- Used compression algorithms to optimize communication of image data when the user chooses low-resolution image mode instead of wireframe.
- Used SQLite to save the application initial configuration schemes.
Confidential
iOS Developer
Responsibilities:
- Worked on all areas of application from the logic to UI
- Used SQLite to store and retrieve a directory of the important sites within campus.
- Implemented OpenMaps as the map engine
- Added Custom Annotations to the interesting places