Tomas Macek

Tomas Macek

Hradec Kralove, Hradec Králové Region, Czech Republic
Hire Tomas
Scroll To View More
Tomas Macek

Tomas Macek

Hradec Kralove, Hradec Králové Region, Czech Republic
Member since January 20, 2016
Tomas has more than six years of remote contract work experience as a developer. He has developed his workflow to be able to quickly and effectively deliver complete and polished end products and to clearly communicate project's outputs. He has a strong passion for developing 3D applications and games in Unity—especially augmented and virtual reality related ones. However, he is perfectly capable of developing multi-platform 2D applications.
Tomas is now available for hire
Portfolio
Experience
  • Unity3D, 6 years
  • C#, 6 years
  • Augmented Reality, 5 years
  • Game Development, 5 years
  • Java, 4 years
  • MySQL, 3 years
  • PHP, 3 years
  • JavaScript, 3 years
Hradec Kralove, Hradec Králové Region, Czech Republic
Availability
Part-time
Preferred Environment
Unity, C#, Visual Studio, Vim, Git
The most amazing...
...app I've made is the mobile game Soccerinho—a 3D soccer experience set in Prague's old city which was nominated for debut Czech game of the year 2014.
Employment
  • Senior Unity Programmer, Project Manager
    3Move Labs
    2014 - PRESENT
    • Designed and implemented Unity Extensions for internal development workflow improvements and for distribution on Unity Asset Store.
    • Planned and coordinated programming works with the products' global marketing strategy.
    • Created analysis and proposals of applications architecture.
    • Used a Leap Motion API for implementation of interactive contactless demonstrations for the Leap Motion controller in Unity.
    • Created scenes for demonstrations of 3D interactive tours in which user is able to explore provided interiors.
    • Built web application based on Magento which enables dynamic creation of interconnected database tables. This app can be accessed through it's REST API and provides an Unity application on any platform with game parameter settings which can be modified dynamically and loaded after restarting application's scene.
    Technologies: Unity, C#, PHP, MySQL, JavaScript, jQuery, Leap Motion API, Magento
  • Unity for iOS Senior Engineer
    Smartlivez (via Toptal)
    2016 - 2016
    • Implemented a solution for an external sensor data transformation and it's mapping of the animation space of each golfer player character.
    • Integrated an inverse kinematics solution for left and right hand movement, golf club positions, and rotations during movement; on the top of the original golfer animation.
    • Created Unity editor extensions for improving data mapping control and for verification of data transformation and data integrity.
    • Embedded an Unity application into an existing iOS application and integrated synchronization of it's startup state and data forwarding.
    • Designed a WebGL version of the application for faster project iterations and testing of functionality with debug possibilities of importing sensor data from CSV files and exporting resulting animations to CSV files.
    • Used custom DI architecture which ensured faster and more reliable prototyping and simplified adding unit tests to verify and test correct data mapping functionality.
    Technologies: Unity, C#, Xcode, iOS, WebGL, JavaScript
  • Lead Unity Programmer
    Pavel Platil Animation Studios
    2012 - 2015
    • Created analyses and proposals of applications architecture. Shaped the levels based on provided scene sketches.
    • Coordinated team of 3D and 2D graphics and optimized used game assets. Optimizations included development of own tool for moving and rotating pivot points while preserving used animation on models.
    • Implemented an animation system for character goalkeeper capabilities - re-targeting principles including inverse kinematics for hand movement.
    • Tweaked the physics portion of an engine to ensure performance and a pleasant game experience with proper ball mechanics.
    • Implemented performance optimizations including used shaders, basic lighting settings, memory usage, and build size reduction.
    • Provided foundation for beta testers and prepared products for placement in the iOS AppStore and Google Play; including the release itself and following support.
    Technologies: Unity, C#, Cg, Vuforia, Xcode, iOS, Eclipse, Android
  • Unity Programmer
    Keen Software House
    2011 - 2012
    • Created a flexible system for game testing regular builds with use of JSON configuration file.
    • Improved the performance of an existing dynamic mesh generation system.
    • Extended an existing IMGUI system for a basic application layout.
    • Modified an existing sound effects solution, implemented better architectural encapsulation and prepared user friendly solution for the sound engineer.
    • Modified and tweaked existing terrain shader solution for better performance and visuals without blending issues.
    Technologies: Unity, C#, Cg
  • Web Apps Developer
    iTechTrade
    2010 - 2011
    • Created an AJAX Facebook application connected to Facebook chat through an XMPP protocol ensuring direct users' notifications as native chat messages.
    • Integrated Red5 streaming video services to facebook apps for group video chat features.
    • Programmed analytical tools processing data from various web sources for online marketing purposes using chart based interface for output.
    • Set up Magento platform for building complex web applications and extended it's features by implementing new reusable modules.
    • Developed cron job for collecting and sorting information about public auction data from Czech Republic.
    • Prepared, integrated and updated Magento layouts for Magento based applications.
    Technologies: Linux, Apache, MySQL, PHP, Magento, Zend Framework, AJAX, jQuery, Flash, XMPP, Red5, XFBML, FBJS, Facebook API
  • Programmer Analyst, Senior TIBCO Consultant
    PIKE Electronic
    2007 - 2009
    • Implemented a tool which compares two XML documents and is capable of highlighting distinct parts of documents thanks to it's block comparison algorithm.
    • Developed tools for the automatic generation of documents to HTML, PDF, and CHM formats with use of the DITA Open Toolkit and XSLT.
    • Modified architecture of original application for use as an Eclipse RCP plugin. Isolated features were divided into separate modules.
    • Provided technical support and onsite product presentations for various international clients.
    • Supported booth preparations and presented product at TUCON 2008 San Francisco conference.
    Technologies: Java, TIBCO, XML, XSD, XSLT, Eclipse RCP, TIBCO BusinessWorks, TIBCO EMS
Experience
  • Soccerinho (Development)
    http://bit.ly/soccerinho

    A 3D soccer app set in Prague's old city. It runs on iOS and Android mobile devices.

    Soccerinho takes the player through the alleys of early 20th century Prague. The graphics are based on black and white period photos. Soccerinho debuted in 2014 and was presented by the Czech games association.

    I implemented all the core functionality, the scene and lighting setup, integrated the 3D and 2D assets, and the performance optimizations. Part of my work was also integrating platform specific services like GameAnalytics, Game Center, Google Play Games Services, Chartboost, UnityAds, and so on.

  • Foosack (Development)
    http://bit.ly/foosack

    A 3D foosball game using the Leap Motion Controller. Project was designed to explore the possibilities of this new technology.

    I implemented all core functionality which was heavily based on physics manipulations and image based lighting solution which was in the end replaced by Marmoset Skyshop solution.

  • Tata Jump AR (Development)
    http://bit.ly/tatajump

    An interactive augmented reality virtual-tour of the Nexon for Tata Motors (www.tatamotors.com). Application was used to introduce their concept car. An interactive model of the car could be viewed from any angle and layers of the car could be removed to show underlying layers. These views were augmented by on-screen technical specifications.

    I integrated Vuforia as main tool for image-based object detection functionality and implemented layered shader system for showing underlying layers of car.

  • Kid Kamba AR (Development)
    http://bit.ly/kidkamba

    Kid Kamba and his seven friends have one thing in common, they're all Super Heroes! This augmented reality application let's you virtually interact with Kid Kamba and his friends who are brought to life as holograms in front of you. This application is part of the digital comics “Kid Kamba”.

    I integrated Vuforia as the main tool for image-based object detection functionality and implemented the system for triggering animation. I processed and optimized the given 3D assets and set up a Mecanim animation system for them.

  • Exposed - Rule-Based References (Development)
    http://bit.ly/unityexposed

    A simple, but powerful tool which helps Unity developers easily and automatically map object references for their components. They can set rules for creating references. Plus these references are completely reusable for other components. Everything is configurable in the Inspector and the results of rules settings and references can be seen immediately.

    I designed and implemented the whole functionality as an Unity extension.

  • SOLID Framework (Development)

    A complete framework for Unity programmers. It helps developers with all phases of development from analysis, implementation, to testing, and all the while following all the basic SOLID principles in mind.

    I designed and implemented whole functionality as an Unity extension. Designing it had foundation in my previous knowledge of Dependency Injection and other programming patterns and experiences from my previous projects.

  • The 10 Most Common Mistakes That Unity Developers Make (Publication)
    Unity is an excellent and straightforward tool to use for multi-platform development. Its principles are easy to understand, so programmers can start developing new products quickly and intuitively. However, if developers do not keep some important things in mind, development can slow down at crucial points, including when the project moves away from initial prototype or is approaching final release. In this article, Toptal Freelance Software Engineer Tomas Macek outlines the most common mistakes that Unity developers should be aware of for future projects.
Skills
  • Languages
    C#, XML, Java, Cg, PHP, JavaScript, HLSL, Objective-C, C++, GLSL
  • Frameworks
    Unity, Unity3D, Zend Framework, NSubstitute, NUnit
  • Platforms
    Vuforia, Magento, Oculus Rift, Android, iOS
  • Misc
    Game Development, IoC, Shaders, Unity Shaders, Augmented Reality (AR), Project Management, Virtual Reality (VR), 3D Modeling, 3D Animation, Game Design, Screencasting
  • Libraries/APIs
    jQuery, TIBCO, WebGL
  • Tools
    Redmine, Trello, Git, Adobe Photoshop, Adobe Director, Eclipse, 3ds Max, Xcode
  • Paradigms
    REST, SOLID, Augmented Reality, Dependency Injection
  • Storage
    JSON, MySQL
Education
  • Master's degree in Computer Science
    University of Hradec Kralove - Hradec Kralove, Czech Republic
    2002 - 2007
I really like this profile
Share it with others