Andrej Trajchevski
Verified Expert in Engineering
Software Developer
Andrej is a developer with experience in delivering clean, working, and testable code. He's been actively working for 5 years, both in firms and as a freelancer. His last job was writing games for Gambit.com (a gaming platform) and developing the platform itself, along with 5-6 other people.
Portfolio
Experience
Availability
Preferred Environment
Git, Sublime Text, Ubuntu, Linux
The most amazing...
...thing I've coded is a distributed system for transcoding videos using a master and server architecture, written on top of FFmpeg using Node.js.
Work Experience
Web Developer
Gambit.com
- Currently developing a billiards simulator (physics engine) in JavaScript.
- Wrote three of the 20 game currently on the platform: "Dominoes", "Rock-Paper-Scissors", and "Grab'em Poker."
- Took part in redesigning ORM models to be testable.
- Designed and implemented a testing library which can be used for integration testing + scripting user behaviour.
- Researched and evaluated type-safe languages like TypeScript and PureScript to help deal with the inherent unsafety of JavaScript.
- Wrote an SDK that allowed players to write bots for Gambit.
Lead Developer
NOVP
- Solely created a distributed system for transcoding video.
- Wrote an open-source library for controlling FFmpeg from Node.js.
- Dealt with synchronizing servers and data, wrote and utilized deployment tools and scripts.
- Improved my knowledge on decoupling components, writing tests and generally code that's readable.
- Accumulated enough experience with NOVP to begin freelancing.
Web Developer
Innologica AG
- Created web applications for Swiss telecommunication providers.
- Utilized AngularJS as a front-end MVC library, wrote the back-ends in Flask.
- Learned how to prevent most common attacks that happen on the Web.
- Used and wrote some tools/scripts for deploying.
- Started thinking about writing testable code, both on the back-end and the front-end.
- Learned about configuring Nginx and Apache.
Student, Python Developer
Google Summer of Code
- Wrote an add-on for a data mining software called Orange.
- Orange was designed to work only with text data, I added functionality so it could work with images.
- Learned a solid bit of Qt and its Python binding.
- First time working solely on a project, so learned a lot about managing time and motivation.
- Project is free and open-source.
Web Developer
Reform Solutions
- Created multiple websites using Contao CMS.
- Delivered projects while working on small teams.
- Learned a lot about JavaScript and jQuery in the process; also the need for front-end MVC and using VCS.
- Developed several government websites.
- Understood the trouble when using a poorly documented CMS
Software Validator
Ein-Sof
- Tested software written in Java -- checked if the product matched the specification.
- Collaborated on creating a diagnostic tool for Honda.
- Had the chance to review enterprise code written in Java.
- Wrote automated tests in Jython.
- Worked in an environment that utilized a V-Model software development cycle.
Experience
Behance Appreciate Button
http://www.behance.net/gallery/Embeddable-Appreciate-Button-for-Behance/7321861Plain FFmpeg
https://github.com/NOVP-Open-Source/plain-ffmpegEventList.mk
Skills
Languages
JavaScript, Python, HTML5, Java, Jython, PHP, CSS3
Frameworks
Express.js, AngularJS, Flask, Django
Libraries/APIs
Node.js, React, Backbone.js, jQuery, Fabric, FFmpeg
Tools
Git, Sublime Text, Mercurial, RabbitMQ, Mocha, Jenkins
Paradigms
REST, Imperative Programming, Object-oriented Programming (OOP), Test-driven Development (TDD), Functional Programming
Platforms
Docker, Linux, Ubuntu
Storage
PostgreSQL, MongoDB, MySQL, MariaDB
Other
WebSockets
Education
Bachelors Degree in Computer Engineering
South East European University - Tetovo, Macedonia
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring