Iulian Bogdan C.

Mobile developer

Outsourcing
Senior
Bucharest, ROMANIA
Contact us for this profile

My experience

More

PENTALOG CLIENT : Company Specialized in Stroke Rehabilitation Solutions01.12.2018 - 01.08.2019

iOS Developer.
  • Development in Xcode using the Objective-C language (and iOS specific frameworks).
  • Creating and uploading store and development builds (AppStore and TestFlight).
  • Development of various functionalities using different technologies:
    - internal data storage using REALM (including data migration);
    - cloud data storage using PRYV (GDPR compliant), REST and JSON;
    - data manipulation, converting data into an user-friendly format and presenting it in multiple ways, including graphics (CorePlot);
    - synchronization of data between the two applications;
    - communication and management with/of Bluetooth devices using CoreBluetooth and the NordicSemiconductor library (iOSDFULibrary): discover and connect to peripherals, firmware update, read and write information from the peripherals;
    - account management: account creation, persistent login, revoke access to data, account recovery;
    - localization;
    - time management: countdown timer and stopwatch;
    - development of various solutions for the existing code: e.g. had to develop a solution to query the current view controller if it can be dismissed by an action triggered on a different view controller (this system had to be developed without too much refactoring and with a reasonably short development time, multiple view controllers already being displayed at a specific moment on screen; the result was a solid and stable solution that works without issues and with easy integration);
    - code refactoring: extracted, structured, created code to be generic and reusable.
  • Maintenance of the relationship with the client (daily meetings).
  • Providing support and offering consultation to the client in order to take the best decisions and find the solutions that fit the needs best.
  • Analysis and research for technical needs.
  • Code reviews.
  • Bug fixing.
More

Interactive entertainment solutions designer01.08.2018 - 01.08.2019

Unity 3D Developer in both phases of the project (Phase 1: August 2018 - December 2018, Phase 2: June 2019 - August 2019).
  • Development in Unity 3D using the C# language.
  • Sole developer of the entire application.
  • Created and provided release and development builds to the client.
  • Development of various functionalities using different technologies.
  • Providing support and offering consultation to the client in order to take the best decisions and find the solutions that fit the needs best.
  • Developed a custom system through which actions from background threads would be dispatched to the main thread (Unity 3D environment does not have this built-in).
  • Worked in close touch with the client's team (located in Canada), who developed the SDK and firmware of the controller.
  • Management of the controller's state (the controller needs to be in certain states in order to perform different actions).
  • Read and wrote information to the controller (modify ministicks behavior through changing the defining curve, set new values to the vibrations intensity, change button assignments, change triggers responsiveness through changing the defining curve, etc.).
  • Persisting custom configurations (custom system for local storage into configuration files using JSON format).
  • File management: create, modify, delete.
  • Custom graph with movable points (with restrictions for some points to move only in certain directions).
  • Custom systems to map images, submaps for different swapable modules that can be inter-changed and it needs updates in real time (using JSON files to describe positions on the image, e.g. the positions of the buttons or the positions and rotations of the modules).
  • Custom system to highlight positions on the image (e.g. pressing a button on the controller would highlight the equivalent button and assignation label on the app interface).
  • Custom system to showcase in real-time the movement of the ministick (the ministick has multiple modes, and based on that, an interface point element has to move along a line to correctly showcase the values received from the controller).
  • Custom drop-down.
  • Custom button behavior.
  • Listened to device notifications and updated the interface based on the state of the controller (display popups, restrict access to application, restrict interaction, etc.).
  • Geometry problem solving (position displacement, graph points restrictions).
  • Adaptable interface (e.g. update available functions based on connected modules on the controller).
  • Update interface in real time (show invalid states for mapping, change displayed content based on the selected configuration – applicable throughout each screen of the application)
  • App changes state tracking (save, reset, rollback).
  • Localization (using JSON).
  • Bug fixing.
  • Unit testing.
More

Software Publisher01.08.2017 - 01.07.2018

iOS Developer.
  • Development in Xcode using the Objective-C language (and iOS specific frameworks).
  • Managing the project launch setup.
  • Development of various functionalities using different technologies:
    - Photos Framework to select videos and photos from the device library;
    - REST to select sample videos and images;
    - MediaPlayer to select music from the device library;
    - CoreData for persistence (including migration);
    - Caching resources;
    - Authentication with the email address;
    - Player with either videos or images (rotating);
    - Buffering for the player;
    - Audio player (synchronized with the video);
    - Analysis with different tools (Facebook Analytics ,Segment);
    - Error reporting (Fabric Crashlytics);
    - In-app support and messaging (Intercom);
    - Support for hardware - Giroptic IO 360 camera (Giroptic SDK);
    - Storage and sharing sensitive of information between the apps (in the same group) of the Client using Keychain Sharing.
  • Maintenance of the relationship with the client.
  • Analysis and research for technical needs.
  • Code reviews.
More

Software Publisher01.03.2017 - 01.08.2017

iOS Developer.
  • Development in Xcode using the Objective-C language (and iOS specific frameworks).
  • Managing the project launch setup.
  • Development of various functionalities using different technologies:
    - A Photos Framework to select videos from the device library;
    - REST to select sample videos;
    - MediaPlayer to select music from the device library;
    - CoreData for persistence;
    - Caching resources;
    - Facebook sharing (Facebook SDK, share as 360 video);
    - Facebook Analytics (Facebook SDK);
    - Error reporting (Fabric Crashlytics);
    - Gyroscope for video rotation.
  • Maintenance of the relationship with the client.
  • Analysis and research for technical needs.
  • Code reviews.
More

Software Publisher01.07.2016 - 01.03.2017

Unity 3D Developer.
  • Development in Unity 3D using the C# language, and native plug-ins for iOS, Android and Windows; in Xcode with Objective-C and Android Studio with Java.
  • Development of various functionalities:
    - Native plugins to access the user's photo library for each platform;
    - Sharing the authentication session;
    - Deep-linking;
    - Custom keyboard for VR;
    - A interaction system for VR;
    - Login and registration with the email address (and Facebook for GoogleVR);
    - Caching;
    - 360 video playback;
    - Platform specific SDK's (GoogleVR, Oculus);
    - Optimization;
    - Crashlytics;
    - Unity Editor utilities;
    - Analytics (Facebook SDK).
  • Providing estimations for the tasks to be implemented.
  • Performing tests and fixing bugs.
  • Maintenance of the relationship with the client.
  • Analysis and research for technical needs.
More

Molecular Diagnostics Company01.11.2015 - 01.07.2016

iOS Developer.
  • Development in Cocoa Framework using Objective-C language (and iOS specific frameworks).
  • Development of different modules in the project, including the server synchronization mechanism using Core Data as persistence framework (where performance on writing/reading massive amount of data was very important).
  • Writing unit test cases.
  • Maintenance of the relationship with the client.
  • Analysis and research for technical needs.
More

BitGym01.12.2014 - 01.11.2015

Developer.
  • Providing estimations for the tasks to be implemented.
  • Development of the application according to the technical and functional specifications.
  • Performing tests and fixing bugs.
  • Implementation of UI and UI elements according to the client needs.
  • Optimization of application features.
  • Implementation of various features and functionalities.
More

Softintercom01.10.2014 - 01.04.2015

iOS Developer within a company specialized in developing applications for iPhone, iPad and iPod devices.
iPhone/iPad software development.
  • Creating projects from scratch in a very dynamic environment.
  • Maintenance and update of current live applications.
  • Working with other team members to deliver high quality solutions.
  • Writing modular, robust code to implement the desired requirements.
More

Newrosoft Research and Development01.01.2013 - 01.10.2014

Developer for the international leader in the field of computer graphics and one of the pioneers of iOS and Android development.

Participation in the development of several projects:
- A game developed in C# for iOS platforms allowing to control a character through different levels chased by helicopters; each level finishes after a specific number of helicopter take-downs. The game consisted of three levels, around 10 different weapons, and three types of helicopters each with three variations.
  • Intervention in the development of the project from the concept stage close to the final phase.
  • Collaboration within a team including a Project Manager and an artist.
  • Use of Prime31 plugins for social networking (Facebook and Twitter) and in-app purchases.

- A betting game developed for iOS and Android platforms which includes different value chips, three levels, being available in English, Chinese simplified and Chinese traditional.
  • Game development in C#, using a Java plugin.
  • Collaboration within a team including a Project Manager and an artist.
  • Intervention on the whole project, to the release on both platforms.
  • Photoshop work: cropping, extracting textures, small modifications.
  • Creation of a small (external) Java plugin to retrieve system language, as Unity returns only Chinese (no differentiation between dialects, e.g. Chinese traditional and Chinese simplified will return Chinese).
  • Use of plug-ins for in-app purchases (Prime31's GoogleIAB and StoreKit), statistics (Flurry), review (Prime31's Etcetera).

- An iOS application developed in C#, targeted for a telecommunication company. The application includes the following features: select a country from \nthe globe (3D globe with country flags), confirmation screen, select \ncountry language (dialect) (depending on each country, maximum three \nlanguages, initially up to even seven or eight), display confirmation in\n selected language, display selection info and possibility to play audio\n message in selected language (if available).
  • Development of the entire project.
  • Collaboration within a team including a Project Manager and an artist.

- An Android game, which was created initially as two separate projects and later merged. The game is based on a basic plug-in.
  • Game development in C#, using NGUI plug-in.
  • Collaboration within a team which included two programmers, a Project Manager and an artist.
  • Intervention on multiple phases of the project.
  • Development of the AI (zombies and animals for the two different modes), the crafting and inventory system, basic save and load map.
  • Optimization of the game, implementing a new terrain generation system, a new noise system for terrain generation.
  • Optimization of the saving and loading processes (changed to a new system).
  • Improvement of the rendering system.
  • Change of the whole UI to new UI using NGUI plug-in (inventory, crafting, menus, etc).
  • Modification of some parts of NGUI to suit needs.
  • Bug fixing.

- A game developed for iOS platforms using C#.
  • Intervention in the concept phase.
  • Collaboration within a team including a Project Manager and an artist.
  • Development of the main menu and standard level.

- A game developed for iOS platforms. It includes such features as: 100 levels, in-app purchases, play with Facebook account or guest, find all emojis, bonus rounds.
  • Intervention on the final phase of the project.
  • Game development in C#, using NGUI plug-in.
  • Fixing different issues on different levels (animations, square features behavior), mapping friends, adding new features, handling tutorial, level adjustments.
  • Performing the release process.

- A traditional New Zealand drinking game, which requires players to throw a match into their opponents' drink. It allows both single player and multiplayer sessions of round robin from 2 to 6 players.
The main characteristics of the game include the following:
- it requires an account for playing, independent (create, reset password in two steps by email and token) account or log in with existing Facebook account;
- multiple characters to play with (animated), multiple glasses, multiple drinks, matchboxes and respective matches, remedies, locations;
- each object has individual characteristics;
- complex store with many items;
- drinking feature if loss by tilting phone simulating drinking;
- remove match from drink (glass) by pinching out;
- each location has own characteristics, effects, affects throwing;
- when losing, players have to drink the used beverage, updating the player status, visual updates, affects throwing;
- statistics, ranking (global, and by friends);
- complex UI with multiple screens, notifications, pop-ups.
  • Game development in C#, using NGUI plug-in for the interface.
  • Collaboration within a team which included a Project Manager, multiple artists and a PHP Developer for server-side development.
  • Use of Prime31's social networking plugin, Colorful plugin for effects (player is drunk, simulating visual effect), Store Kit for in-app purchases.

My stack

Spoken languages

FRENCH: Beginner
ENGLISH: Advanced
ROMANIAN: Native speaker

Networks and systems

Windows

Languages

Objective-C, Swift, C#, JAVA

Technologies

Core Bluetooth, Core Foundation, Core Graphics, Core Plot, CoreData Editor, NGUI, Realm

Web technologies

REST

DBMS

CoreData

Development Environment

Android Studio, Unity 3D, XCode

Mobility

iOS, Android, Cocoa Touch, iOS Photos Framework

Miscellaneous

AFNetworking, JGActionSheet, Best HTTP, Crashlytics, Facebook SDK, Graph Maker, Multithreading, Oculus, Virtual Reality

My education and trainings

Bachelor's Degree in Information Technology and Computer Science, Faculty of Engineering - "Vasile Alecsandri" University, Bacau.2007-2011