Welcome!

My name is Paweł Wojtuń. I'm passionate about programming. I've been learning Java, Spring and front-end technologies in my spare time. Now I'm looking for work experience. You can find examples of my projects below.

Please
take a look...

Contact me:

Please use the form below...




Or just email me...

[email protected]
  • image1
    General info
    ...what and how...
  • image2
    Workout Log
    Spring Boot + Data + Security + Thymeleaf
  • image3
    Social Network
    Spring + Hibernate
  • image4
    Crime Empire
    Spring + Hibernate
  • image5
    Book Catalog
    Spring + REST + JQuery + AJAX
  • image6
    Programming School
    servlets + JSP + JDBC


About me

About my projects in general


I've been programming in Java, most of my projects are web applications based on MVC architecture. I'm using Spring and Spring Boot, I have some practical knowledge of modules like Spring Data, Spring Security, Spring Cloud or Spring Mail. I'm also familiar with servlet and JSP technologies, JSTL tags and EL language.

Most of my projects connect to MySQL database. Older ones use JDBC connector, newer - Hibernate ORM framework.

I'm familiar with unit and integration testing (JUnit, EasyMock, Mockito).

I have decent knowledge of HTML, CSS, Bootstrap, Javascript, JQuery and Thymeleaf templates.

I have some experience with JavaFX architecture and know how to use Scene Builder.

Early on I was using Eclipse (Linux, Windows), recently I've switched to Intellij (Windows). Version control system I use is Git and Maven is my build tool.

Nowadays I've been focusing on improving the quality of my code - I want it to be cleaner, in line with SOLID principles and with relevant documentation. I'm familiarizing myself with TDD and DDD concepts, learning about design patterns, data structures and algorithms. Recently I've started to learn newer Java features (9,10,11), Angular and PostgreSQL.



About me...

My photo

I received my master's degree in psychology from University of Wrocław. Realities of that time in Poland encouraged me to emigrate to Northern Ireland. I started from the scratch - on building sites and factories, but soon I became a sessional interpreter and I travelled the picturesque Uslter counties far and wide interpreting at every possible police station, courthouse and prison.

My return to Poland is a perfect opportunity to change careers. Interpreting was well suited to that time and place, but it just doesn't line up with my interests long-term.

I could never forget the excitement and satisfaction when as a teenager, with stacks of computer magazines and Jan Bielecki's books all around me, I was discovering Basic, Turbo Pascal and eventually Assembler. Obviously software development is very different today but my passion remains unchanged.

Workout Log Launch

login: test, password: test

Workout Log


This web app is a workout log. The aim was maximal possible flexibility of data structure. Workout consists of any number of exercises, each of these with any number of sets. Any number of text notes or media files can be attached to whe whole workout or it's elements. Workout objects are serialized to database and files are stored in AWS cloud.

Basic calculators like general strength, maximum rep and it's percentages are available right away. After logging in new workouts can be created and existing ones can be edited or deleted. Later on I plan to extend existing admin panel stub and maybe add more calculators (Wilks score, powerlifiting and weightlifting totals etc.).

  • it's a Spring Boot application
  • it is secured with Spring Security using custom login page
  • Spring Cloud module is used to store media files in Amazon S3 bucket
  • optional activation emails are sent to users who register using Spring Mail and Amazon SES service or Sendinblue API
  • Spring mechanisms like application events/listeners, validators, schedulers or exception handling have been used
  • unit tests are ready
  • view layer consists of Thymeleaf templates, JS, jQuery and Bootstrap 4


Percentages calculator
Social Network Launch

login: test, password: test

Social Network


This project is a simple social network app. After creating an account and logging in one can view all posts, add own post and comments. User panel is available and details are subject to validation on both registration and edition. It's also possible to send and receive private messages. Unread private messages are marked as such.

As before - this is a MVC Web App and combination of MySQL, JPA and Hibernate was used as persistence layer.

  • this project is fully annotation - based, web.xml file is just a stub


Registration screen validation
Crime Empire Launch

login: test, password: test

Crime Empire


This is a turn - based browser strategy game. You are a gang leader trying to take over all important spots in Whateverville city. You need to manage your resources - which are money, thugs, working ladies and dealers. Each turn you can attack and/or manage your money and people. During enemy turn your points get attacked and random events occur.

This application is a Maven project created with a colleague as the final coursework for Coders Lab bootcamp. User interface was based to a large extent on another's bootcamp participant's work - GEOS Project by Szymon Mikolajczak, which we adapted to our needs.

  • validator has been used to verify user account data
  • MySQL database communication is implemented with JPA specification and Hibernate framework


Tutorial

Book Catalog


This web app is a book catalog and made up of JS / jQuery front-end and Java server.

User is able to perform all basic CRUD operations, which are sent to the server via AJAX calls using GET, POST, PUT and DELETE HTML methods. The controller receives these calls and performs relevant database operations using service layer. Responses are back sent in JSON format. Initially the database was mocked by a hashlist of Book objects, later on I added real database support.

  • JSON format is implemented using Jackson library
  • dependencies are managed by Maven
  • database is accessed via JdbcTemplate
  • all of the unit and integration tests are there


Main screen

Programming School


I created this project while learning how to connect Java Web app to MySQL database using JDBC interface. This application is an example of MVC architectural pattern and it's purpose is programming school management with users belonging to user groups submitting solutions to exercises they were given.

The title screen shows most recently added solutions. User groups can be displayed and public user details and their submitted solutions can be viewed. There's also an admin panel where all CRUD operations can be performed on all entities.

  • user inteface consists of servlets and JSP pages with JSTL and EL
  • user passwords are hashed with JBCrypt library
  • all the unit tests are done


Main screen

This website


This website was created as an excuse to somewhat improve my previously non-existent front-end skills.

  • it was a great opportunity to streamline my workflow - using Javascript ES6 modules, npm and webpack
  • I got familiar with basics of Bootstrap 4 - grid, responsive design, fluid layout and common elements like navbar, sidebar, carousel or jumbotron
  • I learned more advanced CSS features like transformations, animations or pseudo classes
  • I had a chance to learn some basics of web design - page layout, navigation, color palettes and typography

Credits go to Michael Cavalea for Jump.js and Codrops for Slicebox carousel.