Bojan Angjelkoski

Full Stack Developer BSc in Electrical Eng. & Computer Science

Some of the things I can do! 👨🏻‍💻

I am committed and ambitions professional that can quickly assimilate new ideas and concepts and demonstrate a logical and analytical approach to solving complex problems and issues. I am able to analyze code and engineer well-researched, cost-effective and responsive solutions. I manage all aspects of the web development cycle, from concept to requirements definition, design, development, launch, maintenance and user support.

Software Engineering - My programming career started working on C++ when I learned the basics of OOP programming. Getting to work on big scale projects requires me to implement different design patterns and algorithms for different problems the project is trying to tackle. When possible I try to adopt TDD in my development. DDD, Event Sourcing, CQRS are relatively new stuff to me, so I am trying to learn more and use them in my newest projects when are the obvious choice.

Project Management - Working as a Full Stack Developer and in small teams in the past few years taught me how to properly manage a project. From organizing sprints and tasks, doing code reviews and quality checks, executing the tasks to managing the team to achieve goals and meet the criteria set at the time.

Strong communication skills - Communicating clearly while taking into account who my audience is, is an important factor while building products used by different groups of people. Explaining technical terms and situations to customers who are not so technically educated is something I am good at. Being polite in every situation is one of my biggest perks, even if I have to be brutally honest about something.

Team Player - Achieving the best results requires teamwork, especially when working on big scale projects. Within the team, I always try to be honest and transparent with my opinions about the results we are trying to achieve. Sometimes in team work, my opinion won't be the same as the group decision, which is totally fine and I always value that decision and act upon it.

Independent and responsible work - When I am being assigned a task I take full responsability and ownership of the task and do what I promised. I understand the why of decisions and always suggest improvements when there is an opportunity to do so. Even if I stumble across a problem, finding a way to overcome them is a challenge I full embrace.

Quality assurance - I always aim for quality over quantity. Expanding my knowledge (both technically and non-technically) is something I strive actively and consistently, which helps me deliver high-end solutions for the project I am working on. When working within a team, I always try to give constructive and actionable feedback. Writing clean code is my obsession.

Eye for Detail and Troubleshooting - Troubleshooting and debugging a lot of issues and problems has given me the ability to quickly find and fix bugs and issues. Working in this industry for a long time taught me to anticipate potential bugs which save time to work and improve other features within the project I am currently working on.

Remote Work - While remote work has a lot of benefits, it can be challenging and requires a higher level of discipline. Since communication is the key to working remotely, I can search and find information efficiently, document everything in a way that is accessible for everyone. Also, I don't hesitate to ask questions and seek help when needed.