Scroll To View More
Tomas Macek, C# Developer in Hradec Kralove, Hradec Králové Region, Czech Republic
Tomas Macek

C# Developer in Hradec Kralove, Hradec Králové Region, Czech Republic

Member since January 20, 2016
Tomas has more than eight 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 mobile 3D applications and games—especially augmented and virtual reality related ones, fully native or built using Unity.
Tomas is now available for hire

Portfolio

Experience

  • C#, 8 years
  • Unity3D, 8 years
  • Game Development, 6 years
  • Augmented Reality (AR), 6 years
  • Java, 5 years
  • REST, 4 years
  • Swift, 3 years
  • ARKit, 2 years
Hradec Kralove, Hradec Králové Region, Czech Republic

Availability

Part-time

Preferred Environment

Unity, C#, Xcode, Swift, 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 AR Developer

    2016 - PRESENT
    Altered Reality Corporation
    • Created a demo for AWE conference using the new Unity ECS system to simulate the fish movement of thousands of entities on an iOS device while avoiding photorealistic 3D characters in the scene.
    • Implemented a custom-rendering system as an alternative to iOS ARSCNView to combine camera output and AR 3D content rendered using SceneKit.
    • Created Unity Google Tango demo demonstrating the usability and advantages of this early Android AR technology.
    • Implemented a fully customizable video recording solution for iOS and Android.
    • Transformed AR experiences that were originally working as a standalone native iOS app for Messages extensions.
    • Created a Unity AR Core app based on an originally native iOS ARKit app.
    Technologies: iOS, Xcode, Swift, SceneKit, Metal, Unity, C#, ECS, Android, Java, OpenGL
  • Unity for iOS Senior Engineer

    2016 - 2016
    Smartlivez (via Toptal)
    • 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 a Unity application into an existing iOS application and integrated synchronization of its 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 a 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
  • Senior Unity Programmer | Project Manager

    2014 - 2016
    3Move Labs
    • Designed and implemented Unity extensions for internal development workflow improvements and for distribution on the Unity Asset Store.
    • Planned and coordinated programming works with the products' global marketing strategy.
    • Analyzed and developed proposals for application architecture.
    • Used a Leap Motion API for the implementation of interactive contactless demonstrations for the Leap Motion controller in Unity.
    • Created scenes for demonstrations of 3D interactive tours in which the user is able to explore provided interiors.
    • Built a web application based on Magento which enables dynamic creation of interconnected database tables. This app can be accessed through its REST API and provides a 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
  • Lead Unity Programmer

    2012 - 2015
    Pavel Platil Animation Studios
    • Created analyses and proposals of applications architecture. Shaped the levels based on provided scene sketches.
    • Coordinated a team that worked with 3D and 2D graphics and optimized used game assets. The optimizations included the development of my own tool for moving and rotating pivot points while preserving previously used animations on models.
    • Implemented an animation system for character goalkeeper capabilities—retargeting principles including inverse kinematics for hand movement.
    • Tweaked the physics portion of an engine to ensure performance and pleasant game experience with proper ball mechanics.
    • Implemented performance optimizations including used shaders, basic lighting settings, memory usage, and build size reduction.
    • Provided the foundation for beta testers and prepared products for placement in the iOS App Store and Google Play; including the release itself and the following support.
    Technologies: Unity, C#, Cg, Vuforia, Xcode, iOS, Eclipse, Android
  • Unity Programmer

    2011 - 2012
    Keen Software House
    • 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.
    • Improved an existing sound effects solution by implementing better architectural encapsulation and preparing a user-friendly solution for the sound engineer.
    • Modified and tweaked an existing terrain shader solution for better performance and visuals without blending issues.
    Technologies: Unity, C#, Cg
  • Web Apps Developer

    2010 - 2011
    iTechTrade
    • 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 a Magento platform for building complex web applications and extended its features by implementing new reusable modules.
    • Developed a Cron job for collecting and sorting information about public auction data from the 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

    2007 - 2009
    PIKE Electronic
    • 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 the 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

  • Play3D (Development)
    https://play3d.app

    A native iOS standalone and iMessage app that was optimized for iOS 12 and powered by ARKit. Play3D brings the next generation of augmented reality capture technology and offers a line-up of photorealistic 3D holograms.

    I was responsible for implementing AR and 3D functionality and custom rendering engine which combines output from a camera with defined 3D content.

  • Soccerinho (Development)

    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, set up the scene and lighting, integrated 3D and 2D assets, and optimized the performance. Part of my work was also integrating platform specific services like Game Analytics, Game Center, Google Play Games Services, Chartboost, Unity Ads, and so on.

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

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

    I implemented all core functionality which was heavily based on physics manipulations and an 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 (Tatamotors.com). The 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 the main tool for an image-based object detection functionality and implemented a layered shader system for showing the underlying layers of a 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 lets 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 animations. 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 also 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 a 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 a Unity extension. This work relied heavily on 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#, Cg, Java, PHP, XML, JavaScript, Swift, Objective-C, GLSL, HLSL, C++
  • Frameworks

    Unity, Unity3D, ARKit, iOS SceneKit, Metal, NUnit, Zend Framework
  • Tools

    Xcode, Git, Trello, Eclipse IDE, Adobe Photoshop, Redmine, Adobe Director, 3ds Max
  • Platforms

    ARCore, iOS, Android, Oculus Rift, Vuforia, Magento
  • Other

    Augmented Reality (AR), Game Development, Project Management, IoC, Unity Shaders, Shaders, Virtual Reality (VR), 3D Modeling, Screencasting, 3D Animation, Game Design
  • Libraries/APIs

    Tibco, jQuery, WebGL, NSubstitute
  • Paradigms

    SOLID Principles, Dependency Injection, REST
  • Storage

    JSON, MySQL

Education

  • Master's degree in Computer Science
    2002 - 2007
    University of Hradec Kralove - Hradec Kralove, Czech Republic
Certifications
  • IELTS General Training 7.5
    DECEMBER 2018 - DECEMBER 2020
    Britishcouncil.cz
I really like this profile
Share it with others