Bojan Angjelkoski

Engineering Director MSc in Software Engineering

Some of the technologies I use! 💻

TypeScript - I am highly proficient in TypeScript (JavaScript). I have hands-on experience in writing clean and maintainable code using TypeScript, leveraging its strong typing system and modern language features. With TypeScript, I can enhance the scalability, maintainability, and overall quality of software applications.

Web3 and Cryptography - I have a strong understanding of Web3 technologies and cryptography. I am familiar with protocols and frameworks such as Ethereum, CosmosSDK, CosmWasm, allowing me to develop decentralized applications (dApps) and interact with smart contracts. Additionally, my knowledge of cryptography enables me to implement secure and private communication protocols, cryptographic algorithms, consensus mechanisms, digital signature schemes, ...

Blockchain and CosmosSDK - I have expertise in blockchain development and am well-versed in the Cosmos SDK framework. I am capable of designing, building, and deploying blockchain-based applications using the Cosmos ecosystem. My knowledge includes (but not limited to) creating custom modules, handling transactions, implementing governance mechanisms, custom messages, keepers, ante handlers - all while ensuring the security and integrity of the blockchain network.

UI Frameworks - I am proficient in various modern web development frameworks such as Vue.js, React, and Angular. I have hands-on experience in building scalable and interactive user interfaces using these frameworks. Additionally, I am skilled in utilizing TailwindCSS, a utility-first CSS framework, to create responsive and visually appealing web designs.

Software Architecture - I have a strong understanding of software architecture principles and best practices. I am skilled in designing scalable, modular, and maintainable software systems. My expertise includes defining system components, establishing communication protocols, and ensuring the separation of concerns. I am capable of evaluating architectural trade-offs and making informed decisions to achieve optimal system performance and flexibility.

Design Patterns - I am well-versed in various software design patterns that provide reusable solutions to common design problems. I have practical experience in applying design patterns such as MVC (Model-View-Controller), Observer, Factory, and Singleton and many others. These patterns enhance code organization, promote code reusability, and improve the maintainability of software projects. I can leverage design patterns effectively to create well-structured and extensible software architectures.