Mikayel Aghasyan, Developer in Yerevan, Armenia
Mikayel is available for hire
Hire Mikayel

Mikayel Aghasyan

Verified Expert  in Engineering

Software Developer

Location
Yerevan, Armenia
Toptal Member Since
July 20, 2022

Mikayel has about 20 years of experience in software development, working on various projects, including Windows desktop apps, web back-end systems, and mobile apps. He excels in C, C++, Java, Objective-C, and Swift. Mikayel always strives to deliver the best possible results to the business without compromising quality.

Portfolio

Steven AB
Java, Spring, Spring Boot, iOS, Swift, MySQL, Amazon Athena, AWS Lambda...
Tabbed Inc.
iOS, Swift, Node.js, SwiftUI, Firebase, Stripe, Stripe API
Team Solutions
Java, Actor Model, Software Architecture, XML, Back-end, APIs, API Integration...

Experience

Availability

Full-time

Preferred Environment

MacOS, IntelliJ IDEA, Git

The most amazing...

...thing I've developed is a freehand drawing engine implemented in OpenGL ES 2.0 for the iOS platform, which provides a smooth, variable-width drawing experience.

Work Experience

Senior Software Engineer

2021 - PRESENT
Steven AB
  • Set up externally sourced data warehouse infrastructure with AWS Lambda and AWS Athena, which could be used for several purposes such as accounting and reporting.
  • Managed the Mastercard Digital Enablement Service (MDES) project that involved the Apple Pay and Google Pay integrations.
  • Contributed actively to the product business decisions and implementation.
Technologies: Java, Spring, Spring Boot, iOS, Swift, MySQL, Amazon Athena, AWS Lambda, Firebase, Xcode, Web Services, XML, DevOps, Full-stack, Full-stack Development, XML Interface Builder (XIB), Back-end, APIs, Hibernate, Apache Tomcat, Amazon Web Services (AWS), REST APIs, API Integration, JSON Web Tokens (JWT), Architecture, Mobile Applications, iOS Native Libraries, iOS SDK, Mobile, Java 11, Apple Design, Cocoa Touch, Relational Databases

iOS Developer

2023 - 2023
Tabbed Inc.
  • Developed features of the iOS app with UIKit and SwiftUI.
  • Helped with back-end development (Firebase and Node.js).
  • Developed a helper tool for interaction with the NCR system.
Technologies: iOS, Swift, Node.js, SwiftUI, Firebase, Stripe, Stripe API

Software Architect

2021 - 2021
Team Solutions
  • Set up a framework for building reactive systems with other core team members.
  • Took part in the design and kickstarting of several projects as a core team member.
  • Contributed to the design of a universal QR payment system.
Technologies: Java, Actor Model, Software Architecture, XML, Back-end, APIs, API Integration, REST APIs, Docker, Architecture, JUnit, Java 11, Relational Databases

Software Architect

2020 - 2021
IUNetworks
  • Analyzed requirements of a large enterprise system and participated in its architecture and design.
  • Contributed to the architecture and implementation of a DSL-based reactive event sourced framework.
  • Implemented Camunda BPM engine integration with our proprietary framework.
Technologies: Java, Vert.x, BPMN, Camunda BPM, Apache Kafka, Message Bus, Domain-driven Design (DDD), Event Sourcing, CQRS, Domain-specific Languages (DSLs), Web Services, XML, Microservices, PostgreSQL, Back-end, APIs, Apache Tomcat, API Integration, REST APIs, Docker, Architecture, JUnit, Java 11, Relational Databases

Software Architect

2018 - 2019
Catches
  • Launched the project's back end and iOS application.
  • Set up the AWS infrastructure with AWS CloudFormation, including VPCs, networking, load balancing, databases, and file storage.
  • Led a small team of back-end, front-end, and iOS developers.
Technologies: Java, Spring, Spring Boot, iOS, Swift, MySQL, Amazon S3 (AWS S3), AWS CloudFormation, Amazon RDS, REST, JSON, SQL, Swagger, AVFoundation, Firebase, Xcode, DevOps, Full-stack, Full-stack Development, XML Interface Builder (XIB), Back-end, APIs, Hibernate, Apache Tomcat, Amazon Web Services (AWS), REST APIs, API Integration, Docker, JSON Web Tokens (JWT), Model View ViewModel (MVVM), Architecture, Mobile Applications, iOS Native Libraries, iOS SDK, Mobile, CocoaPods, Java 11, Apple Design, Cocoa Touch, Relational Databases

Team Lead

2017 - 2018
IUNetworks
  • Managed a mobile app development team in a large company.
  • Designed and managed the implementation of a single sign-on service based on OAuth 2 specification.
  • Initiated several mobile app projects, including a mobile operator client app and e-wallet.
Technologies: iOS, Android, Swift, Single Sign-on (SSO), OAuth 2, Java, Spring, Spring Boot, Team Management, Test-driven Development (TDD), Clean Architecture, Xcode, XML, Full-stack, Full-stack Development, APIs, REST APIs, API Integration, Docker, JSON Web Tokens (JWT), Model View ViewModel (MVVM), Architecture, Mobile Applications, iOS Native Libraries, iOS SDK, Mobile, CocoaPods, JUnit, Apple Design, Cocoa Touch

Software Developer

2012 - 2017
ShowMe
  • Refactored a large codebase to make the code more maintainable and increase the app's performance.
  • Added several features to the app, attracting many new users.
  • Rewrote a freehand drawing engine in OpenGL ES 2.0 since the old version was developed in OpenGL ES 1.0 to support variable width curves. It resulted in increased performance.
  • Implemented the GridView library for iOS just before Apple released UICollectionView.
Technologies: iOS, Objective-C, UIKit, OpenGL ES, Core Data, AVFoundation, Xcode, XML Interface Builder (XIB), Carthage, APIs, REST APIs, Mobile Applications, iOS Native Libraries, iOS SDK, Mobile, SQLite, Automatic Reference Counting, CocoaPods, Apple Design, Cocoa Touch

Software Developer

2012 - 2017
BIGBEK
  • Developed and launched the first version of the restaurant reservation and ordering client app with integrated Bitcoin payments.
  • Initiated a few and contributed to developing several additional mobile apps.
  • Analyzed and discussed project requirements with the clients. Negotiated estimations and planned accordingly to satisfy the clients with the results and timelines.
Technologies: iOS, Objective-C, Swift, UIKit, Agile, Scrum, Negotiation, Planning, Xcode, GitHub, PostgreSQL, XML Interface Builder (XIB), PromiseKit, Bluetooth, APIs, REST APIs, Mobile Applications, iOS Native Libraries, iOS SDK, Mobile, SQLite, Automatic Reference Counting, CocoaPods, Apple Design, Cocoa Touch

Software Developer

2010 - 2012
AtTask (now Workfront)
  • Developed a work and project management system for an iOS client application.
  • Implemented a networking layer for communication with the REST API.
  • Optimized large table view scrolling performance by implementing low-level cell rendering.
Technologies: iOS, Objective-C, Scrum, Agile, REST, Optimization, Xcode, XML Interface Builder (XIB), APIs, REST APIs, Mobile Applications, iOS Native Libraries, iOS SDK, Mobile, Apple Design, Cocoa Touch

Senior Software Engineer

2009 - 2010
Telegate Armenia
  • Contributed to a document search and indexing engine library and a set of applications for the library.
  • Developed a web page crawling application and implemented several features.
  • Implemented an effective HTML parsing, classification, and indexing feature.
Technologies: C, C++, Linux, Ubuntu, Search, Indexing, POCO, POCO C++, XML

Mid-level and Senior Developer

2003 - 2009
Lycos Armenia
  • Worked actively on a shopping search and product comparison system. Implemented many features in all layers of the system.
  • Implemented table, tree, and tree-table components in pure JavaScript with the column resizing, reordering, and freezing features.
  • Took technical leadership in developing a product and offer management tool for internal use, a Java desktop application based on Eclipse rich client platform (RCP).
Technologies: JavaScript, Java, SWT, Eclipse JFace, JFace, Eclipse RCP, Java EE, Enterprise Java Beans (EJB), Jakarta Server Pages (JSP), Java Servlets, Apache Struts, JBoss, Apache Tomcat, Web Services, XML, Back-end, HTML, CSS, Relational Databases

Junior and Mid-level Developer

2001 - 2003
Boomerang Software
  • Developed several features of WebShop, the Windows desktop software for creating dynamic websites and online shops.
  • Built several features of a web version of WebShop.
  • Worked actively on a web application for project and document management and collaboration.
  • Created a web browser cookie manager for Internet Explorer.
Technologies: C, C++, Microsoft Foundation Class (MFC) Library, Microsoft Foundation Classes (MFC), Win32 API, Java, Jakarta Server Pages (JSP), Java Servlets, JavaScript, Active Server Pages (ASP), Applets, AWT, Microsoft Visual C++, XML, HTML, CSS, Relational Databases

App Steven

https://www.getsteven.com/
Steven is a mobile app for splitting and settling shared expenses. It allows the automatic addition of expenses from connected bank account transactions through the Open Banking API and Steven-issued MasterCard purchases.

I contributed to many features on the back-end side and implemented a few integrations with external services. In addition, I managed integration with MDES MasterCard Digital Enablement Service (MDES), developed its back end and API, participated in the development of ApplePay integration, and set up a data warehouse infrastructure used for several reports and other purposes.

Catches App

http://catchesapp.com/
An iOS app that combines social networking and apparel shopping.

As the only developer initially, I created product MVP, back end, API, and iOS app. I also designed and set up back-end infrastructure in AWS using AWS CloudFormation with an isolated private network, load balancers, back-end instance autoscaling, and databases.

ShowMe Interactive Whiteboard

https://www.showme.com/
ShowMe is an iPad app that allows recording voice-over whiteboard tutorials and sharing online.

I developed many app features and refactored a large codebase to make it more maintainable and performant. My most exciting and challenging contribution was a complete rewrite of a drawing engine in OpenGL ES 2.0, which involved a lot of math. Another notable thing is a grid view library that I developed in a week. A couple of months later, Apple announced a new UICollectionView in the next major iOS release, which had almost the same API and look as the one I created.

Languages

Java, Swift, Objective-C, Java 11, SQL, XML, Scala, Domain-specific Languages (DSLs), C, C++, JavaScript, Active Server Pages (ASP), HTML, CSS

Frameworks

Spring Boot, iOS SDK, Cocoa Touch, Spring, UIKit, Hibernate, JSON Web Tokens (JWT), JUnit, Vert.x, Swagger, OAuth 2, Jakarta Server Pages (JSP), Apache Struts, Core Data, SwiftUI, Combine, gRPC, Angular, AngularJS, Express.js

Libraries/APIs

REST APIs, iOS Native Libraries, CocoaPods, OpenGL ES, POCO, POCO C++, SWT, Eclipse JFace, Java Servlets, Microsoft Foundation Class (MFC) Library, Win32 API, AWT, Protobuf, PromiseKit, React, Node.js, Stripe, Stripe API, Microsoft Foundation Classes (MFC)

Tools

XML Interface Builder (XIB), IntelliJ IDEA, Git, Xcode, Docker Compose, GitHub, Amazon Athena, Camunda BPM, AWS CloudFormation, JFace, Eclipse RCP, Apache Tomcat, Microsoft Visual C++, Amazon Virtual Private Cloud (VPC), Jira, Jenkins, Kafka Streams

Paradigms

Object-oriented Programming (OOP), REST, Event Sourcing, CQRS, Test-driven Development (TDD), Clean Architecture, Agile, Microservices, DevOps, Model View ViewModel (MVVM), Distributed Computing, Functional Programming, Actor Model, BPMN, Scrum

Platforms

iOS, Mobile, Apache Kafka, MacOS, Amazon Web Services (AWS), Docker, Firebase, AWS Lambda, Android, Linux, Ubuntu, Java EE, JBoss, Amazon EC2, Blockchain, Google Cloud Platform (GCP)

Storage

JSON, MySQL, PostgreSQL, Databases, SQLite, NoSQL, Relational Databases, Amazon S3 (AWS S3), MongoDB, MariaDB

Other

Software Development, Full-stack, Full-stack Development, Architecture, Mobile Applications, Apple Design, Reactive Systems, Software Architecture, Domain-driven Design (DDD), APIs, Back-end, SDKs, Web Services, API Integration, Automatic Reference Counting, Technology, Mathematics, Applied Mathematics, Mathematical Analysis, Discrete Mathematics, Cloud, Message Bus, Amazon RDS, Single Sign-on (SSO), Team Management, Negotiation, Planning, Optimization, Search, Indexing, Enterprise Java Beans (EJB), Applets, PassKit, Autoscaling, Elastic Load Balancers, Load Balancers, AVFoundation, CI/CD Pipelines, Carthage, Bluetooth, User Interface (UI), User Experience (UX), Cloud Computing

2002 - 2004

Master's Degree in Informatics and Applied Mathematics

State Engineering University of Armenia - Yerevan, Armenia

1998 - 2002

Bachelor's Degree in Applied Mathematics

State Engineering University of Armenia - Yerevan, Armenia

OCTOBER 2022 - PRESENT

Node.js, Express, MongoDB & More: The Complete Bootcamp 2022

Udemy

JUNE 2021 - PRESENT

Lightbend Scala Language Professional—Level 2

Lightbend, Inc.

JUNE 2021 - PRESENT

Reactive Architecture: CQRS and Event Sourcing—Level 2

Lightbend, Inc.

JUNE 2021 - PRESENT

Reactive Architecture: Building Scalable Systems—Level 2

Lightbend, Inc.

JUNE 2021 - PRESENT

Reactive Architecture: Distributed Messaging Patterns—Level 2

Lightbend, Inc.

MAY 2021 - PRESENT

Reactive Architecture: Reactive Microservices—Level 2

Lightbend, Inc.

MAY 2021 - PRESENT

Reactive Architecture: Domain Driven Design—Level 2

Lightbend, Inc.

MAY 2021 - PRESENT

Reactive Architecture: Introduction to Reactive Systems—Level 2

Lightbend, Inc.

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring