
Hi, I'm Adam Kopeć!
Software craftsman and clean code enthusiast
Profile
Full name
Adam Kopeć
BORN
30. June 1989 – Sosnowiec, Poland
adam.kopec@gmail.com
WORK EXPERIENCE
CRIF, Kraków
Java Software Developer - February 2018 - Current
- Java 8 and advanced SQL Server programming,
- Technical design consultations (especially regarding lowering of the cross artifact dependency level, introduction of internal libraries, versioning scheme etc.),
- Debugging, analysis and refactoring of internal concurrency related algorithms and tools,
- International architectural meetings participation (in english),
- Build pipeline configuration (svn, maven, jenkins),
- Legacy application maintenance
Synerise S.A., Kraków
Software Engineer - November 2016 - February 2018
- API development (from scratch in Java 8 on Spring Boot) – I was responsible for all architectural concerns (documentation maintenance and versioning, package structure, logging, cross-service request identification in logs, versioning, rate limiting etc.) and most of coding. I used Redis, Kafka, Apache Phoenix for HBase etc.
- Third party integration development (connected with payment collection and real-time data aggregation),
- Java services development (different features added to existing projects),
- Infrastructure automation with Ansible (provisioning, deployment and build scripts),
- Jenkins pipeline configuration,
- PHP application structure normalization (Vagrant introduction, build script creation, test reorganization),
- JavaScript widget development (sophisticated dynamic forms, written mostly in Backbone + Marionette) and some node.js development (mostly tools and fixes for existing services),
- Training of junior developers and interns, team mentoring, development workflow consultation.
Grupa Unity, Kraków
PHP Solution Architect - September 2015 - November 2016
- Playing a lead architect role in a team that worked on company’s flagship product – an in-house e-commerce platform. My work has been focused on transition from dedicated solution, that had to undergo major changes from project to project, into a framework with a consistent, but customizable domain model, that could handle many conceptually different systems.
- Participation in technical meetings with customers,
- Making diagrams and writing documents about the architecture,
- Training of junior developers,
- Knowledge crunching with customers, writing proposals, project boundary negotiations.
Grupa Unity, Kraków
PHP Architect - October 2013 - September 2015
- Implementation of customer’s performance problem solution. Major architectural leap from ad-hoc, stored procedure-based calculations to an asynchronous, messaging-based solution built on the top of RabbitMQ. Development of a custom intermediate data generation algorithm for effective caching.
- Project and implementation of a sophisticated loyalty point calculation program, in some ways similar to Payback™. Project consisted of a calculation engine and an intuitive GUI written in JS, which provided a way to enter even very complex, custom rules.
- Project and implementation of an automated tool, that was able to merge product catalogs from many vendors. It was capable of handling many different protocols, mainly EDI-Wheel, EDIFACT INVOIC, SOAP and Xpartner. Challenges: queueing systems, different data models, event-driven programming, big range of data,
- Activities aimed at modernization of the company’s software development methodology. Introduction of formal code reviews and build automation procedures based on Phing and Jenkins.
- Conducting weekly internal trainings for coworkers. Topics: software engineering, Domain Driven Design, new technologies, elegant design patterns etc.
Empathy, Kraków
PHP Programmer - April 2012 - October 2013
- Programming of e-commerce platforms and dedicated systems for key customers.
- Implementation of integration solutions and business rule modeling.
- Spreading of good software engineering practices: unit testing, object oriented design, refactoring.
- Extending the company’s framework with a DI container, event bus and other components.
- Maintaining legacy systems.
Indexo, Kraków
PHP Programmer - August 2009 - April 2012
- Development of dedicated systems, challenges: XML-RPC, AMF, Lucene, Facebook API, Google Maps API, automatic e-mail responders, PDF generation, web-crawler design, payment systems integration (payu.pl, dotpay.pl) etc.
- Web server administration – deployment, PHP and SQL optimization, domain management.
- Main projects: http://pokaz.to/, http://www.preseller.pl/, http://frauscherboats.pl/, http://www.mountainapartments.pl/, http://ibhp.pl/, indexo.pl homepage and many automated SEO tools
Indexo, Kraków
Intern - July 2009
Web programming with HTML, CSS and JS, SEO tools development
Education
Master of Computer Science (incomplete)
Applied informatics, AGH University of Science and Technology in Kraków - 2011-2013
I passed all the exams but decided not to write my thesis because it had to be connected with metallurgy, which I was not very much interested in
Bachelor of Computer Science
Applied informatics, AGH University of Science and Technology in Kraków - 2008-2011
Computer science studies flavoured with a little bit of metallurgy, materials science and thermodynamics
High School
II High School in Dąbrowa Górnicza - 2005-2008
Class of mathematics, physics and informatics
SKILLS
Soft Skills
-
Communication 75%
-
Diplomacy 90%
-
Savoir-vivre 80%
Architectural Skills
-
Knowledge crunching and asking questions 85%
-
Identifying abstractions and analysis 95%
-
Formalization and visualisation 70%
-
Implementation and integration assistance 80%
-
Scrum 75%
Programming skills
-
Server side Java development 90%
-
Object-oriented design 99%
-
Non-visual JavaScript 50%
-
Enterprise integration patterns 70%
-
Testing 80%
Interests
Guitar
I play the electric guitar in a garage band and do some acoustic, even fingerstyle playing in my free time. I listen a lot to jazz and classical music, but I don’t despise metal, rock or electronic.
Books
I like to read books, especially when they offer me a good intellectual exercise. That’s why I’m particularly keen on postmodernism, magic realism and sometimes even hard science fiction.
IT
I work in IT because of passion, not money or future prospects. I like everything computer-related, ranging from math and theory to intelligent cars and cryptocurrencies. I’m excited to observe how the technology changes our civilization.
Contact
SEND ME A MESSAGE
ADDRESS
os. Kalinowe 16/40 31-814 Kraków
adam.kopec@gmail.com