A picture of me

Bojidar Yovchev

Software Engineer

I am a software engineer with over 8 years of professional experience. I believe in being self-sufficient and I always try to stay up-to-date with the technologies I use. I think that as software engineers, we are there to solve problems, and we should be able to quickly learn and adapt to whatever is required in order to complete the task.

I studied software engineering at the Software University in Sofia, Bulgaria during high school (remotely) and landed my first job at Oxxy just 2 weeks after graduation. My main area of expertise is fullstack web development with Angular, React, Next.js, Vue and Node.js. I've also used React Native and a bit of Ionic. Throughout the years I've had the pleasure to work on various projects, getting exposed to a wide variety of technologies which I believe is really beneficial as it expands one's grasp.

GitHub

Tech Stack

Technologies I've worked with

Programming Languages

JavaScriptTypeScriptC#PythonSolidity

Frontend

HTML5CSS3SCSSReactNext.jsAngularAngularJSVueTailwindCSSReact NativeFigma

Backend

Node.jsNestJSExpressJSGraphQL.NET.NET CoreFastAPIElasticSearchAlgolia

Database & ORM

MongoDBMongoosePostgreSQLSQLPrisma

Testing

JestPlaywrightCypressMochaJasmineProtractor msw.js

Cloud & DevOps

AWSDockerTerraformPulumiSST

Computer Science

Design PatternsData StructuresAlgorithms

Experience

My professional journey over the years

Freelance
Software Engineer
December, 2020 - Present
Remote

I have been working as a freelancer on the side whenever I have enough capacity. My favorite stack is React with Next.js, MongoDB Atlas, SST and Pulumi for IaC and AWS for cloud services, I've also been using Angular, Vue, Node.js and NestJS, depending on the project requirements.

Key responsibilities:
  • Discovery sessions with clients to understand their needs
  • Navigating the seamless resolution of issues in an agile environment
  • System design to address business requirements in a pragmatic and cost-efficient way
  • Deploying cloud infrastructure using popular IaC solutions like Terraform and Pulumi
  • Developing UI components using the framework of choice for the project
  • Developing backend APIs as per the business needs
  • Writing unit and end-to-end tests
  • Ensuring best practices are met across the codebase
ReactNext.jsMongoDB AtlasSSTPulumiAWSAngularVueNode.jsNestJS
IKEA
Software Engineer
May, 2023 - December, 2024
Remote

The project I worked on while at IKEA was the so-called ROIT - Range Offer Input Tool - which was a tool to allow users to optimize their range of articles exposed in physical stores based on key performance indicators (KPIs). When I joined the project, I discovered that their codebase did not follow most best practices and they had a lot of technical debt. Since the project itself was not that big, I decided to push myself and rewrite their entire frontend and backend in order to become easier to modify and extend. Before I left the project, everything was written to the best of my ability. Our tech stack involved GCP for cloud services, Docker, Kubernetes and Terraform for IaC, BigQuery, CloudSQL and Redis for database storage, a uvicorn Python server with FastAPI on the backend, Vue on the frontend, Jest for unit tests and Cypress with msw.js for end-to-end tests. We were using GitHub with GitHub Actions as our CI/CD pipelines so the tests were being run upon a pull request as a sort of an acceptance criterion. I was initially hired as a frontend developer, however I ended up doing fullstack development, so I had complete ownership of the features I delivered.

Key responsibilities:
  • Collaborating with Product Owner, UI, Data and engineering to brainstorm solutions end-to-end
  • Ensuring best practices across our codebase
  • Supporting and extending the frontend and backend sides
  • Occasionally providing support on the infra-side
  • Helping fellow teammates
  • Reviewing pull requests
  • Writing unit and end-to-end tests
GCPDockerKubernetesTerraformBigQueryCloudSQLSQLuvicornPythonFastAPIVueJestCypressmsw.js
LogicFlow
Software Engineer
February, 2022 - April, 2023
Remote

While at LogicFlow, I did not actually work on their core product. Instead, I was onboarded onto a project of a client of theirs which was basically a banking software written in AngularJS on the frontend and Java on the backend. My role there involved migrating the AngularJS part to Angular v12+ as well as writing unit tests to cover the functionality. We were using BitBucket pipelines for CI/CD so the tests were being executed upon a pull request towards the main branch.

Key responsibilities:
  • Migrating bank software from angular.js to Angular v2+
  • Communicating with developers from the client's team to ensure business requirements are met
  • Reviewing pull requests
  • Helping fellow teammates
  • Migrating and writing unit and end-to-end tests
AngularAngularJSJavaScriptTypeScriptMochaProtractorJest
Taxback International
Software Engineer
February, 2021 - January, 2022
Remote

Taxback Group is a family of companies providing tools for tax and VAT management. While there, I worked on an in-house project with Angular where I had to implement response caching on the client side using IndexedDB as well as extend their existing UI and work on bug fixing. Later on we began building a React Native application to basically port that project to mobile (I was the one who suggested React Native and my team lead liked the idea so we went for it). I am not entirely sure about their overall tech stack as I did not get entirely involved in it.

Key responsibilities:
  • Communicating with Product Owner and UI team to address business requirements
  • Working with tech lead on architectural changes and system design
  • Working with QA to address issues and inconsistencies
  • Ensuring best practices across my domain
  • Mentoring fellow teammates
  • Reviewing pull requests
AngularJavaScriptTypeScriptReact Native
WeTrack
FullStack Developer
July, 2017 - December, 2020
Remote

WeTrack is a platform that provides project and risk management solutions. I implemented a substantial part of their user interface using Angular v2+. We had designs for everything which were provided to us in Zeplin, and this meant creating a whole bunch of custom components to properly adhere to said designs, which gave me the opportunity to get my hands really dirty building all of them thus gaining quite some expertise in building components from scratch. Even though I was more involved on the frontend, I also did some backend work for certain features (one of which involved a filtered Gantt chart view) and I also helped for the backend refactoring when we decided to do that. Our tech stack consisted of Azure for cloud services, .NET Core with Entity Framework on the backend, SQL Server for our database and Angular v2+ on the frontend, and later on we started using Ionic in order to implement PWA capabilities with proper gestures on mobile.

Key responsibilities:
  • Communicating with our CTO (who was also like a Product Owner and a UI-person) to ensure business requirements are seamlessly met at the technical level
  • Developing custom components based on Zeplin designs using Angular v2+
  • Helping to refactor the backend architecture
  • Extending and developing features on the backend using .NET Core and Entity Framework
  • Mentoring junior developers and helping them with issues
  • Reviewing pull requests
  • Helping teammates with issues concerning my expertise
AngularJavaScriptTypeScriptSCSSC#.NET CoreEntity FrameworkAzure
Oxxy
JavaScript Developer
June, 2016 - April, 2017
On-site - Sofia, Bulgaria

Oxxy is a site builder like Wix. We wrote mostly vanilla JavaScript and later on we started using Angular and Vue to implement e-commerce store functionality. On the backend they were using PHP with Laravel, however I never worked on those as I was just starting off and did not have any experience to be able to tackle them.

Key responsibilities:
  • Implementing various features like the ability to rotate widgets and scale them proportionally for mobile devices using pure JavaScript
  • Implementing e-commerce store creation capabilities on the frontend using Angular v2
  • Collaborating with team lead and fellow teammates on resolving bugs and improving the codebase
JavaScriptTypeScriptAngularVueWebpack

Tech Experience

Experience with individual technologies

JavaScript
8 years
HTML5
8 years
CSS3
8 years
TypeScript
7 years
SCSS
7 years
Angular
7 years
Node.js
6 years
React
5 years
ExpressJS
5 years
Next.js
4 years
NestJS
4 years
C#
3 years
TailwindCSS
3 years
Figma
3 years
SQL
3 years
Jest
3 years
AWS
3 years
Docker
3 years
Python
2 years
AngularJS
2 years
Vue
2 years
GraphQL
2 years
.NET
2 years
.NET Core
2 years
FastAPI
2 years
MongoDB
2 years
Playwright
2 years
Solidity
1 year
React Native
1 year
Prisma
1 year
Cypress
1 year
msw.js
1 year
Terraform
1 year
Pulumi
1 year
SST
1 year
ElasticSearch
Less than a year
Algolia
Less than a year
Mongoose
Less than a year
PostgreSQL
Less than a year
Mocha
Less than a year
Jasmine
Less than a year
Protractor
Less than a year