Experienced Software Engineer
I just thought this was a nice place for my resume. :)
In case you prefer the PDF version, here it is.
Microsoft – Software Engineer
May 2012 – present
Delivered core improvements on the next-generation SQL Server in-memory MVCC database engine, Hekaton. Had a key role in expanding the lock free transaction processing mechanism to support interleaved nested transaction. The solution is currently patent-pending. This enabled a top-requested user scenario: Multiple Active Result Sets. Implemented natively compiled stored procedure support for Check and Foreign Key Constraints.
Development of the shared-nothing distributed RDBMS engine, SQL Server Parallel Data Warehouse (PDW). Helped deliver Transparent Data Encryption by leading the effort to utilize AES-NI instructions in SQL Server to increase performance. Extended Distributed-SQL language surface area by implementing features such as error handling and intrinsics. Added PDW connectivity to Visual Studio tooling.
Developed a set of PowerShell scripts to facilitate quick deployment of a Hadoop cluster (including Hive, Pig, H Base, etc.) on a set of local or Azure VMs for development purposes. With a seven minute deployment time on the desktop, increased team productivity significantly.
Vast.com – Core Software Engineer
March 2011 – May 2012
Lead redesign and reimplementation effort of Vast Data Framework, a JSON and Avro based serialization framework used throughout the company’s infrastructure. Through the use of Maven-integrated code generation it provides efficient and convenient data access.
Took part in implementation of various features and worked on improving the overall architecture of VastDB, a No SQL solution based on a dbm-like key value store and Hadoop, dubbed a “streaming database.” Completely redesigned and expanded the feature set of VastComm, a Netty based communications library that greatly simplifies implementing network interfaces such as HTTP or Avro for internal REST services.
Softplus Design – Founder
Part time 2003 – 2010
Founded the company during the 3rd year of High School as a family business. Designed and implemented an end to end solution for Sports Bookmakers. Responsibilities included understanding user scenarios, UI design, software architecture and implementation, including the internal tools used to provide continuous data updates to customers.
EDUCATION & AWARDS
M.Sc. in Software Engineering – School of Electrical Engineering, University of Belgrade
October 2008 – September 2010
GPA: 9.00 out of 10
Thesis: Integrated Development Environment for Assembly languages
The thesis focuses on teaching assembly to SE students. It analyses the existing solutions and presents a novel approach based on ease of use and simplicity. The Messy Lab IDE is currently part of the B.Sc. curriculum of the university. Features include VM and debugging capabilities. It was implemented in C#. www.messylab.com
B.Sc. in Software Engineering – School of Electrical Engineering, University of Belgrade
October 2004 – October 2008
GPA: 9.07 out of 10
As part of the curriculum I designed and implemented a number of projects using a diverse set of technologies. These include Preemptive Multithreading Kernel written in C++, Distributed Image Processing system written in Java, Airport Baggage Transport System written in ASM and based on a custom x86 hardware schematics and Automobile Cruise Control System written in Java Real-time.
Patent Award – Microsoft
2015: Multi-Version Data System Nested Transactions Isolation
TECHNOLOGY & LANGUAGES
|Programming languages:||C#/.NET, Java, C/C++, PowerShell, x86 ASM|
|Fundamentals:||Strong OOP skills, Software Design Patterns, General Algorithms, Basics of Computer Architecture, Basics of Digital Circuit Design|
|Development tools:||Visual Studio 2013, IntelliJ IDEA, Eclipse, Maven, TFS, Perforce; on Windows, Mac & Linux|
|Data processing:||SQL Server, PDW, Hadoop, Tokyo, MySQL, SQLite|
|Languages:||English (fluent), Serbian/Croatian (native)|