I joined eBuddy in 2009, as junior iOS developer. At that moment instant messaging services were still very popular and Apple started flooding the market with the first models of iPhone just the year before. With many different social outlets offering messaging services, mobile users did not have a single solution where they could access these services as one. And that was the idea behind eBuddy: to provide a single client for accessing messaging networks like MSN Messenger, GTalk, Facebook Chat and Yahoo Chat, just to name the most famous.
In eBuddy I always worked in an agile Scrum team, initially made of 3-6 iOS developers and a dedicated QA engineer, and later on composed of Android, Web and Backend developers. The iOS apps I worked on were similar and composed of a network layer needed to establish socket connections with our backend, an access and security layer to authenticate the user, a persistence layer needed to provide the user with features like search or chat history, and finally a layers of views and controllers. My responsibilities were to take part in all sprint planning and review sessions, code all new features, maintain old ones, fixing bugs, analyzing crash reports and solving them, in every above mentioned layer.
Side to apps, I had the task to maintain the mobile web version of eBuddy chat client.
Key concepts: SVN, iPhone OS 2, iPhone OS 3, iOS 4, iOS 5, SQLite, MVC, CoreData, crash reporting, crash symbolication, Apple Push Notification System, multi threading, asynchronous programming, REST, JSON, PHP