Hi, my name is
Roman Fairushyn.
I build Enterprise Software.
As a full-stack software engineer, I specialize in creating and designing top-notch digital experiences. Currently, my focus is on developing ML products for Metro Bank (UK).
About Me
A highly self-motivated Software Engineer with more than eight years of hands-on experience and strong mathematical background. Experience includes meeting tight deadlines, delivering software to 40,000+ users, and building performance-critical systems ground-up (fullstack development). Primary language C#, many experiences with Java and Python. Has theoretical and practical knowledge of programming design templates, algorithms, data structures, and flexible methods of software development.
LANGUAGES:
- Major: C#, Java, Python, JavaScript, SQL, TypeScript
- Minor: Kotlin, Swift, Objective-C, C++, PHP
FRAMEWORKS & LIBRARIES:
C#/.Net:
- C# language features and best practices
- .NET Framework, .NET Core, .NET 6 and newer versions
- Autofac, MEF
- Entity Framework (EF) and Entity Framework Core (EF Core), Dapper, LINQ, oData, Telus, Elsa Workflow
- NUnit, xUnit.net, MSTest, Moq, NSubstitute, SpecFlow
- .NET MAUI, Xamarin Forms, PRISM
- JSON, XML, Hangfire
- ASP.NET Identity, OAuth 2.0, OIDC (OpenID Connect), JWT (JSON Web Tokens)
Java:
- Spring (Core, MVC, Boot, Data, Security, Cloud)
- Hibernate or JPA (Java Persistence API), JDBC (Java Database Connectivity)
- Tests (JUnit, Mockito)
- JSON, XML processing libraries (e.g., Jackson, JAXB)
- Maven, Apache Tomcat
Python:
- Flask, Django, NumPy, SciPy
- Behave, Pytest, Unittest
Node.Js
- Node.js, Express.js, Nest.js
- Mongoose, Sequelize, TypeORM
Frontend:
- JavaScript (ES6+), TypeScript
- Angular, NgRx, Redux
- React.js, Gatsby, Next.js, RxJs
- Jest, Cucumber, WebdriverIO, Jasmine
- HTML, CSS, Sass, SCSS, Playwright, API Testing, Selenium, Gherkin, Applitools
Desktop:
- WPF, WinForms, UWP, Avalonia, Electron
Mobile:
- MAUI, Xamarin, Xamarin.Forms
- Swift, Objective-C, iOS SDK, UIKit, SwiftUI, Xcode
- Java, Kotlin, Android SDK, Android Studio
- React Native
SQL databases:
- MySQL, PostgreSQL, MS SQL Server, SQLite
NoSQL databases:
- MongoDB, Redis, ElasticSearch, Cassandra, Neo4j, CouchDB, DynamoDB
Version Control:
- Git, GitHub, GitLab, Bitbucket, Azure DevOps, TFS, SVN
Containerization & Orchestration:
- Docker, Kubernetes, Helm, Azure Kubernetes Service (AKS)
Cloud Platforms:
- AWS (e.g., EC2, Lambda)
- Microsoft Azure, Azure services (Service Fabric, Azure Functions, Azure App Service, Azure SQL Database, Azure DevOps
Monitoring & Logging:
- ELK Stack (Elasticsearch, Logstash, Kibana)
- Grafana
- Prometheus
- Splunk
- Application Insights
- Azure Monitor
- Serilog or NLog
- GrayLog
Message Brokers & Queues:
- RabbitMQ, Kafka, Azure Service Bus, Azure Event Grid, Azure Event Hubs
Continuous Integration/Continuous Deployment (CI/CD):
- Azure Pipelines
- Jenkins with .NET plugins
- TeamCity
- Octopus
Software:
- macOS, Windows, Linux
- JetBrains (Rider, IntelliJ IDEA, PyCharm, WebStorm, DataGrip)
- Microsoft (Visual Studio, VS Code)
- Xcode
- Web Engines (Apache, Nginx, IIS)
- FireBase
Where I’ve Worked
Software Engineer @ Metro Bank (UK)
April 2023 - Present
Domain: Fintech
Founded in 2010, Metro Bank is an award-winning community bank renowned for its distinctive approach to banking. With a strong presence across the UK, the bank emphasizes unmatched customer service, offering extended hours and quick in-store services, such as immediate debit card printing. Their innovative offerings include drive-thru banking and unique customer experiences like in-store events. Valuing attitude over initial skill, Metro Bank is dedicated to cultivating a vibrant work culture, always putting customers, colleagues, and communities at its core.
Technology stack: C#, TypeScript, Python, BDD, TDD, .Net, MSSQL, Angular, NgRx, Redux, Web API, Jest, Cucumber, Multithreading, Behave, Jasmine, SpecFlow, Playwright, NUnit, XUnit, API Testing, Selenium, Gherkin, WebdriverIO, Redis, TeamCity, Octopus, Bitbucket, Service Fabric, Splunk, Microsoft Azure
Products: Decision Engine/Credit Score Analyzer (ML)
- Implemented SpecFlow for common microservices
- Implemented adapter service for Decision Engine
- Implemented migrations by upgrading Indexes on live banking system
- Implemented merge of two main microservices into one for performance purpose
- Integrated Redux functionality into Angular project
- implemented performance optimization / Memory profiling
- Implemented Playwright project for UI and API testing
- Performing design & code reviews
- Cover functionality with Tests
- Product development and maintenance
Some Things I’ve Built
Featured Project
id 21
One37 is an innovative solution that allows customers to issue and accept verifiable credentials while ensuring a great customer experience with all the security guarantees and compliance with applicable privacy & regulatory policies.
- C#
- Xamarin
- .Net
- Web API
- SQLite
- SQLite
- Elsa Workflow
Featured Project
Livein
Are you thinking of buying an apartment? There is new smart approach to housing selection. The application allows you to choose the apartments that suit you best, and also shows smart alternatives and sales hits.
A personal rating is formed from the apartments that you liked, and you will be the first to know about discounts and special offers for planning that are in your personal top. And maybe you will get a personal discount.
The Kyivmiskbud company has more than 25 residential complexes in different price categories and different districts of Kyiv and the region. These are thousands of apartment plans and options. The application contains information about absolutely all housing complexes, sections, apartments and layouts.
- Xamarin Forms
- C#
- NET Framework
- Mysql
Featured Project
KAN Home
The KAN Home application was created to provide services for Tetris Hall, Fayna Town and Respublika residential complexes.
Allows you to control the access of guests and cars to a closed area, pay utility bills, have access to online cameras on the territory of the residential complex, organize leisure activities, and receive the latest news.
The application also allows you to submit applications to the management company and track their processing.
- Xamarin Forms
- Rider
- C#
- .NET Framework
- MySql
- Hikvision
- Redmine
Other Noteworthy Projects
view the archiveGenerating Strongly-Typed Configuration Objects with .NET 7’s Source Generator API
One of the most exciting new features in .NET 7 is the introduction of a new source generator API. This feature allows developers to create code that generates other code at compile-time, reducing the amount of boilerplate code that needs to be written and making it easier and faster to develop .NET applications.
Getting started with Keycloak REST API
Getting started with Keycloak REST API with Docker.
The easiest way to get device unique identifier in Xamarin Forms
I have been working on a new Xamarin Application where we didn’t have the opportunity to authorize a user. So I decided to interact with the user by using the device unique identifier. I wanted to have a cross-device solution for my application, optimized, and official package from the Xamarin team at Microsoft that could easily be consumed by any application.
What’s Next?
Get In Touch
Although I’m not currently looking for any new opportunities, my inbox is always open. Whether you have a question or just want to say hi, I’ll try my best to get back to you!
Say Hello