I am a pragmatic software engineer. I have hands-on experience in a variety of development areas such as platform and web development, automation and optimization. I think that any software project gains huge benefits by following clean coding rules and standards (like SOLID), TDD and by using some form of Agile methodology. I am a great fan
I am a pragmatic software engineer. I have hands-on experience in a variety of development areas such as platform and web development, automation and optimization. I think that any software project gains huge benefits by following clean coding rules and standards (like SOLID), TDD and by using some form of Agile methodology. I am a great fan and advocate of these.
I believe that the right tool has to be used to get the job done efficiently therefore I keep updating my knowledge pool with recent technologies including programming languages following the functional paradigm. I also love to share the knowledge with my peers thus I'm always happy if I get a chance to hold a training session about some new or old technology we use.
Languages I know and like: Java, Clojure and a bit of Python.
Technologies I have most experience with: Spring, OSGi, Karaf, Eclipse RCP, JPA, UML, Liquibase, Junit, Mockito, AngularJS, Android
I'm interested in distributed systems, AI, data mining, big data and much more. I usually tend to be attracted to topics/technologies which present me with a challenge. What I do not prefer is UX/UI development and frontend in general. If you have ideas which do fit my interests feel free to contact me. If you do so please use the motto "Grey M&M's" in your mail.
Lead Software Engineer @ From May 2015 to Present (4 months) BudapestSenior Software Engineer @ I worked for AVON on the MAPS (Marketing Analysis and Planning System) project which consists of several sub-projects. Main highlights:
- I developed a database (Oracle) migration tool using JPA annotations. The main goals were to be able to recursively insert/delete records and to use as little memory as possible and be as fast as possible.
- Reverse engineered PL/SQL stored procedures and extracted them to java code to gain robustness.
- Optimized SQL queries for speed (~50-200% speed gain).
- Written a tool for proper integration tests using Spring, JUnit and Mockito.
- I'm also part of a SCRUM team implementing a web application platform which is based on OSGi and generates the domain objects from UML models.
MAPS is used in every country where AVON is present. From January 2014 to May 2015 (1 year 5 months) BudapestSenior Software Engineer @ I worked on the Liligo meta search engine: http://www.liligo.com/
- Optimized key areas of the engine gaining sometimes 3000% speedup.
- I have written tons of unit tests using JUnit, Mockito and the dreaded Powermock (for the legacy parts) thus increasing unit test coverage from 0.5% to 7%.
- After Odigeo bought Liligo we needed to scale up the engine for all of its peer companies thus significant refactorings were made to gain modularity and we introduced Cassandra to the system.
- I also worked on a spatial categorization module for district, neighboring areas and landmarks (you can see an example here: http://hotel.liligo.hu/Place/London_1.htm?mapState=expanded=1) using a closure table database model. I've used TDD on this project and UML for its design. From July 2013 to December 2013 (6 months) BudapestSoftware engineer @ I worked on a DMS (Dealer management system) platform backend and frontend for Porsche (Volkswagen).
- We used SCRUM methodology, TDD, pair programming and BDD.
- My first take on AOP was here which resulted in a lot of boilerplate decrease and time savings on the backend codebase (somewhere around 5-10% gain).
- I also worked on test automation and framework development using Cucumber, Junit and Mockito.
- I helped the team fire up continuous integration using Jenkins and Maven. From January 2013 to July 2013 (7 months) BudapestSoftware developer @ I worked on a platform based on the Eclipse RCP framework (Frontend: SWT/RCP/JFace, Backend: JPA, Hibernate, Spring + JAX-WS) named PROD.
- MVC implementation on frontend, business logic development on backend based on specs.
- Entity – Model mapping framework development on backend.
- Optimized existing JPQL queries for a 20-30% speedup.
- We used Kanban (with some elements from SCRUM) methodology
PROD is currently used by Dension and 77 Electronics in production. From 2011 to 2013 (2 years) Budapest, HungarySoftware developer @ I was working on an application project which is used by traffic wardens around Budapest.
- I developed a parameterizable (JSON) UI framework for Android.
- Android component development (GPS, Photos, Bluetooth).
- On the backend side I worked on SOAP webservices (PHP) and optimized SQL queries (Oracle).
- I've also worked on a geographical information system (GIS) which displayed information and statistics about the Android devices used by traffic wardens.
This platform is still in use covering ~33% of Budapest. From 2010 to 2011 (1 year) Budapest, HungarySQL Analyst (SAP), software developer @ - I started working as an SAP key user and my work was mostly writing SQL reports. Later I've written an application on the LAMP stack for creating reports, charts and accounting for the trainers/salespersons of the company using PHP and PChart.
- I also automated administrative work sometimes gaining 4-500% speedup and decrease in time and costs.
TACK International uses this piece of software to this day. From 2007 to 2010 (3 years) Budapest, Hungary