Passionate Software Engineer

Summary
  • Seasoned software professional with over 10 years of experience creating enterprise JVM applications for supply chain, retail, marketing and finance industries
  • Well rounded software engineer capable of both backend and frontend development
  • Practitioning Scala since 2009 in spare time and since 2011 full-time

Technical Skills
  • Languages: Scala, Java, C/C++
  • Scripting: JavaScript, Bash
  • Middleware: Hazelcast, Akka, RabbitMQ, ZeroMQ, JMS
  • Libraries/Frameworks: Play, Scalaz, Spring, Unfiltered, Spray, ScalaQuery, Querulous, Scalatra, Scalate, Dispatch
  • RDBMS: MySQL
  • NoSQL: Cassandra
  • Big Data: Hadoop
  • Linux: Debian, Ubuntu, CentOS
  • Build Tools: SBT, Maven, Ant

Professional Experience

Aug 2011 – present           Lead Software Engineer at BOSTON TECHNOLOGIES, Boston, MA
Leading the efforts of a team responsible for architecting, designing and implementing from ground-up a foreign currency exchange reporting platform, which has been a crucial project for the company. The implemented solution is highly available, continuously handles large volume of data and makes the processed data available in near real-time. Achieved high productivity in large part by using Scala frameworks and libraries.

Aug 2010 – Aug 2011         Principal Software Engineer at CONSTANT CONTACT, Waltham, MA
Part of three person team responsible for re-architecting Constant Contact's back-end infrastructure which builds, schedules and routes emails to the mail farm. This has been company's top priority project whose goal is to bring the existing system to the next level by making it scalable, robust, high-transactional, high-throughput and highly available. The implemented solution relies heavily on a data grid for data distribution and key-value database for data storage, as well as web services for data exchange.

Nov 2007 – Aug 2010          Senior Software Engineer at RAVE MOBILE SAFETY, Framingham, MA

Key contributor in a small start-up company, developing server-side applications using XP methodology. Improved existing and developed new functionality of a high-performance Alerting server, capable of delivering 450 messages per second. Proposed and successfully implemented proof of concept for a more effective way of sending e-mail messages. Solely designed and developed a Location Server, which for multiple client applications obtains current location of a cell-phone subscriber. Implemented various integrations with third party applications through Web Service interfaces. Migrated portions of a customer facing application from Struts 1 to Struts 2. Refactored large sections of legacy code for the purpose of decreasing the number of database calls, caching reference data and making user session more lightweight.

Jun 2005 – Nov 2007          Application Developer 3 at ORACLE RETAIL (formerly PROFITLOGIC), Cambridge, MA
As part of Common Components team responsible for developing and maintaining frameworks and common applications which provide foundational services for the suite of retail decision support products. Created a Package Version Manager tool to properly resolve dependencies between different application modules. Developed a System Information tool to assist Professional Services team in remotely troubleshooting customer issues. Ported components between different application servers. Integrated applications with third party business intelligence suites, inducing a single sign-on feature. Collaborated with a remote team on a portal development project. Improved the overall code quality by initiating use of programs which search for defects and code duplication. Enhanced and maintained continuous integration. Mentored a CS undergraduate intern. Served as a member of Coding Standards Committee and Architecture Group.

Jul 2002 – Jun 2005           Software Engineer at MANHATTAN ASSOCIATES (formerly Logistics), Burlington, MA
Participated in all stages of software development lifecycle of a high transaction Transportation Planning & Execution system processing over 1 million shipments daily. Conducted data model, process flow and business object model design of commonly used objects, such as Purchase Order, Shipment, etc. Collaborated with Professional Services team in quickly responding to customer issues by delivering high quality patches. Trained and led a team of two in-house and four offshore developers in creation of a Yard Management product. Performed evaluation and recommended graphics technology used for real time rendering of the yard. Profiled multiple application modules to remove performance bottlenecks. Worked closely with Product Management to ensure feasibility of business requirements.

May 1999 – Aug 2001         Programmer at MINISTRY OF INTERNAL AFFAIRS, Bosnia-Herzegovina
Sole developer automating daily department operations through creation of utilities, programs and databases. Developed a utility enabling printing on teleprinters, overcoming lack of standard printers. Replaced dozens of manual processes, streamlining department productivity. Developed additional encryption layer for enhanced security of interdepartmental communication. Recognized by management and clients for quality of performance.


Education
  • Cornell University, Ithaca, NY
    • 2002 Master of Engineering, Computer Science (3.97 GPA)
    • Thesis: Fault-Tolerant Distributed Bank System
  • University of Sarajevo, Bosnia-Herzegovina
    • 1999 Bachelor of Science, Computer Science (9.31 GPA out of 10)
    • Thesis: Simulation of Data Link Layer Protocols
    • Honors: Ducat for outstanding academic success


Continuing education
  • Sun Certified Programmer, Java 2 Platform
  • ArsDigita Boot Camp
  • Harvard University Extension School:
  • Coursera:
    • Fall 2012: Functional Programming Principles in Scala (with distinction)



Speaking Engagements
 
 Date    Topic Event Video Slides
Feb 18 2011Scala Performance ConsiderationsNortheast Scala Symposium 2011
http://vimeo.com/20290504http://goo.gl/IBkap
Mar 14 2011Scala for F# DevelopersNew England F# User Group    N/A http://goo.gl/O4Wbx
May 12 2011What Functional Purists don't want you to know about ScalaNew England Java User Group    N/Ahttp://goo.gl/Frxs7
http://goo.gl/gVKXK
May 24 2011    Remote Function Applications: A Framework towards Scala Grid Parallel CollectionsBoston Scala User Group

http://bit.ly/iSdfJc

http://goo.gl/YAIxt
Jun 2 2011
Remote Function Applications: A Framework towards Scala Grid Parallel Collections        
Scala Days 2011
http://goo.gl/pYyTbhttp://goo.gl/pY9Rm
Jun 9 2011
Hazelcast: The Art of Data Distribution
New England Java User Group
 N/Ahttp://goo.gl/hSDIV
Oct 3 2011
Hazelcast and Cassandra Combined: A Powerful Alternative to Peer-to-Peer JMSJavaOne 2011
 N/Ahttp://goo.gl/J1jYi
Oct 4 2011
What Functional Purists don't want you to know about ScalaJavaOne 2011                
 N/Ahttp://goo.gl/Q3v4Y
May 14 2012Scala PuzzlersBoston Scala User Grouphttp://goo.gl/RdKUl         
Jul 17 2012Java and Data Distribution: Open Source Clustering with HazelcastBoston Java Meetup N/Ahttp://goo.gl/zs1aO
Sep 13 2012Play 2.0: The power of Node.js on the JVMNew England Java User GroupN/Ahttp://goo.gl/rFFus


Community Involvement

Online Presence

Areas of interest
  • Concurrent and Parallel programming
  • Functional programming