An overview of some of the projects I've worked on and technologies I've worked with during my employment.
Power Automate
UiPath
SSMS
SQL
Power Apps
A WEB BASED GITHUB REPOSITORY BROWSER FOR CATALYST.
HTML
CSS
JS
React
Redux
NPM
A WEB BASED ROLODEX APP TO STORE AND SEARH ALL YOUR MONSTER FRIENDS.
HTML
CSS
JS
React
NPM
A WEB APP TO TEST IF A WORD OR A SENTENCE IS PALINDROMIC IN NATURE.
HTML
CSS
JS
jQuery
A WEB APP THAT CONVERTS ANY DECIMAL NUMBER TO A ROMAN NUMERAL.
HTML
CSS
JS
jQuery
A WEB APP THAT CAN ENCRYPT AND DECRYPT THE USER'S MESSAGE BY USING THE ROT13 IMPLEMENTATION OF THE CEASAR'S CYPHER.
HTML
CSS
JS
A TRUBUTE TO THE CREATOR OF PACMAN, TORU IWATANI.
HTML
CSS
A SURVEY FORM AIMED AT SYDNEY-SIDERS TO ESTABLISH WHAT THE BEST SUBURB IS TO LIVE IN AND WHY.
HTML
CSS
A PRODUCT LANDING PAGE FOR AN ONLINE STORE THAT SELLS MONITORS AIMED AT GAMING ENTHUSIASTS.
HTML
CSS
A JAVASCRIPT FUNCTION THAT TAKES IN A USER DEFINED STRING OF NUMBERS AND SPECIAL CHARACTERS AND VALIDATES IF IT MEETS THE CRITERIA FOR A 10 DIGIT UNITED STATES PHONE NUMBER.
JS
A JAVASCRIPT FUNCTION THAT TAKES THE ARGUMENTS OF ITEM PRICE, CASH PAID AND AMOUNT OF CASH IN CASH REGISTER, AND RETURNS THE USER'S CHANGE WITH ADDITIONAL INFORMATION.
JS
A PYTHON FUNCTION THAT SUMS INTEGER VALUES FROM CONSOLE INPUT UNTIL THE USER DECIDES TO BREAK OUT OF THE FUNCTION. THE INFORMATION CAN EITHER BE DISPLAYED AS TOTAL SUM VALUE ONLY, OR HAVE A MORE DETAILED BREAKDOWN.
PYTHON
A PYTHON FUNCTION THAT ASKS THE USER TO GUESS ANY 5 OF THE FIRST 20 ELEMENTS ON THE PERIODIC TABLE OF ELEMENTS, COMPARES THE INPUT WITH AN EXTERNAL TEXT DOCUMENT AND REPORT BACK THE USER'S SCORE.
PYTHON
A CONSOLE BASED 2 PLAYER GAME OF TIC TAC TOE WRITTEN IN PYTHON.
PYTHON
A PYTHON SCRIPT THAT COMPARES THE CONTENT OF 2 FOLDERS AND COPIES THE DELTA'S TO A 3RD FOLDER.
PYTHON
A PYTHON CONSOLE GAME OF ROCK PAPER SCISSORS LIZZARD SPOCK AS INVENTED BY SAM KASS AND KAREN BRYLA.
PYTHON
A PYTHON SCRIPT THAT RETURNS A DICTIONARY OF REQUIRED RMD MEGASHOR SHORING LENGTHS WHEN GIVEN A CLEAR PROP HEIGHT.
PYTHON
All the work I did during my employment is under strict NDA, so cannot share the code freely on github, however I've taken a few screenshots (redacting sensitive information) on some of the tools and technologies I was exposted to and obtained experience in during this time.
Building countless automation workflows in UiPath using the RE Framework.
Creating process solution design diagrams to plan new workflows using draw.io.
Working with Microsoft's SQL Server Management Studio to view and query process information.
Writing store procedures that get's called from UiPath to extract and update data in the database.
Use Microsoft Power Apps to build user facing apps to assist business users to access and update data in the database.
Use Mocrosoft Power Automate to develop and deploy automation workflows.
Working with Git and Github in a professional setting.
Working with Business Analysts to capture requirements for a process.
Working with stakeholders and managing time and cost expectations on a project.
This was a coding challenge as part of the recruitment process for a Frontend Developer roll at the organisation called Catalyst. At that point in time I construced this out of vanilla HTML, CSS and JS. Need less to say I did not get the job, but received excellent feedback from the company on my technical abilities at a fundamental level and that I am ready to start learing libraries like React, Redux and Sass, aswell as using a package manager for security and maintainance reasons. This is the result of my efforts over the past few months.
Click here to view the full brief.
See brief above for app requirements.
Improved my understanding of working with Node package manager. Imporved my knowledge of architecting a React project, thinking declaritively and building custom components. Wored with the Redux state management library for the first time and learened tonnes about how to implement it on a project and the benefits it has on larger scale projects.
Yes - View on any device.
This was a code along challenge I did as part of the React course: 'Complete React Developer in 2021' I am currently busy with. This serves as an intro project to react, understanding the need for react, its syntax and flexibility in building web apps.
How to work with the React JS library, how to start a project using Node Package Manager and style it using Sass. I also learend how to build custom React components and make asyncrounous requests to an APi to fetch data to display in my project.
Yes - View on any device.
This was an assignment for the freeCodeCamp Javascript Algorithms and Data Structures course. The original brief for this project was to only create a Javascript function (see "Brief" below). I took this concept further after completing this course and created a complete responsive user interface that display relevant emoji's on true or false evaluation of the user defined string.
Create a Javascript function that accepts a string as an argument and evaluates if it is a palindrome or not. Any special characters, punctuation and white space should be ignored and the function should return true or false with a print statement.
Use only HTML, CSS and Javascript to complete this project.
So so much, too many to list. This was the first time I got to see how html, css and javascript all tie together to form one app. Working with JQuery for the first time, handling html input and passing it to a function, displaying text to the wepbage on click of a button, working with SVG files, working with a designer for the first time and using layouts designed on Figma to extract the necessary information to complete this project.
Yes - View on any device.
This was an assignment for the freeCodeCamp Javascript Algorithms and Data Structures course. The original brief for this project was to only create a Javascript function (see "Brief" below). I took this concept further after completing this course and created a complete responsive user interface.
Create a Javascript function that accepts an integer value and convert it to its corresponding roman numeral. All answers should be in upper case.
Use only HTML, CSS and Javascript to complete this project.
I got some experience working with javascript objects, seeing as multiples of 10 roman numerals were stored in its own object. I got exposed to unicode escape sequences and further enforced jQuery concepts.
Yes - View on any device.
This was an assignment for the freeCodeCamp Javascript Algorithms and Data Structures course. The original brief for this project was to only create a Javascript function (see "Brief" below). I took this concept further after completing this course and created a complete responsive user interface. One of the simplest and most widely known ciphers is a Caesar cipher, also known as a shift cipher. In a shift cipher the meanings of the letters are shifted by some set amount. A common modern use is the ROT13 cipher, where the values of the letters are shifted by 13 places. Thus 'A' ↔ 'N', 'B' ↔ 'O' and so on. The same algorithm can thus be used to encrypt and decrypt a message.
Create a Javascript function that accepts a ROT13 encoded string as input and returns a decoded string. All letters will be uppercase. Do not transform any non-alphabetic character (i.e. spaces, punctuation), but do pass them on.
Use only HTML, CSS and Javascript to complete this project.
I discovered the great use of specifying javascript EventListeners over HTML onclick attributes in this project. You can see the use of both in this project as I expreiment with them. I also created a popup modal, countdown timer and copying text to the clipboard for the first time. The thing I had the most fun with was the loadbar animation that runs when you are encrypting or decrypting a message. This is purely aesthetic and I tried to simulate the lag/delay often encountered with progress bars.
No - View on desktop/laptop for best experience.
This was my very first assignment for the freeCodeCamp Responsive Web Design course. I decided to create a tribute page to the creator of the famous video game "Pacman", named Toru Iwatani.
Choose a person from history (alive or deceased) that has achieved/created something of value to either yourself or society and that you want to pay a tribute to by means of this static web page.
Use only HTML and CSS to complete this project.
I learned a lot about CSS pseudo classes in the creation of the Pacman animation. Also, patience...
No - View on desktop/laptop for best experience.
This was an assignment for the freeCodeCamp Responsive Web Design course. My wife and I had just immigrated to Sydney, Australia and had recently gone through the process of looking at apartments to rent in an unknown city. We did not know anyone here personally to ask for advice and relied heavily on information online about the areas we considered renting in. The information online was mostly from estate agent websites and did not give a reason as to why people want to live there. This is what sparked the idea for this project.
Create a survey form on any topic of your choosing. The survey form must be fully responsive and scale to mobile devices.
Use only HTML and CSS to complete this project.
This was the first time I had to make a website responsive and learned a lot about CSS Flexbox and working with scalable units such as rem and percentage(%). I also had the opportunity to create and style custom checkboxes and radio buttons.
Yes - View on any device.
This was an assignment for the freeCodeCamp Responsive Web Design course. I was in the process of looking for a new monitor for my home office and decided to base the project on an online store that sells gaming monitors.
Create a product landing page for a online store that sells some product of your choosing. The page should feature the specification of the items, pricing options for various items, a Youtube video link of the item and space for the user to submit an email address
Use only HTML and CSS to complete this project.
I learned how to create a responsive iframe that contained the youtube video and further reinforced the concept of CSS Flexbox. It was very challenging building a navigation bar for the first time, but it all came together at the end. I loved creating the burger menu animation that executes on click.(This is only visible on smaller devices)
Yes - View on any device.
This was an assignment for the freeCodeCamp Javascript Algorithms and Data Structures course.
Create a Javascript function that accepts a string of characters and return true if the passed string looks like a valid US phone number. The user may fill out the form field any way they choose as long as it has the format of a valid US number. The following are examples of valid formats for US numbers:
Use only Javascript to complete this project.
The success of this function is largely based on the use and understanding of regular expressions and even though I have used regex in previous projects, it was never on this scale. Each valid version of the phone number has a corresponding regex that will match only that number format.
This was an assignment for the freeCodeCamp Javascript Algorithms and Data Structures course.
Design a cash register drawer function checkCashRegister() that accepts purchase price as the first argument (price), payment as the second argument (cash), and cash-in-drawer (cid) as the third argument.
(cid) is a 2D array listing available currency.
The checkCashRegister() function should always return an object with a status key and a change key.
Return {status: "INSUFFICIENT_FUNDS", change: []} if cash-in-drawer is less than the change due, or if you cannot return the exact change.
Return {status: "CLOSED", change: [...]} with cash-in-drawer as the value for the key change if it is equal to the change due.
Otherwise, return {status: "OPEN", change: [...]}, with the change due in coins and bills, sorted in highest to lowest order, as the value of the change key.
Use only Javascript to complete this project.
This was an assignment for the Microsoft Introduction to Python: Absolute Beginner course.
Create a Python function called adding_report() that repeatedly takes positive integer input until the user quits and then sums the integers and prints a "report". The adding_report() function has 1 string parameter which indicates the type of report:
Use only Python to complete this project. This program requires the use of while loop, if, elif, else, if, else (nested), casting of type, between strings and numbers. The program should only use code syntax covered in modules 1 - 4. The program must result in print output using the numeric input.
This project helped me to reinforce basic language syntax and data structure concepts, such as defining a function with default parameters, working with if/else statements, while loops, string methods, assignment vs comparison operators and formatting print output to name a few.
This was an assignment for the Microsoft Introduction to Python: Fundamentals course.
Create a Python program where the user enters the name of any 5 of the first 20 Atomic Elements and is given a grade and test report for items correct and incorrect.
This program requires the use of print output and use of input, for/in loop, if, file open, .readline, .append, .strip, len. and function def and return. The code should also consider using most of the following (.upper() or .lower(), .title(), print("hello",end="") else, elif, range(), while, .close())
I learned how to interact with data contained in external files, by opening them in various modes (read only, read and write, append etc) and extracting what is required in my program. Also reinforcing and building on concepts like array methods and while/for loops.
This was an assignment for the Udemy course, 2020 Complete Python Bootcamp: From Zero to Hero in Python
Create a Tic Tac Toe game in Python for 2 human players from what you have learned thusfar in the course.
This was a very fun project for me and my first game I created. I learned about populating and extracting data from python dictionaries, doing a bit of "pixel art" with drawing the game board and setting up the game loop. With most larger scale programs there is an element of systems design that comes into play and learning how to take a staged approach and breaking a seemingly impossible task down into smaller, more manageble chunks of work.
I was given a document administration task at my current job as a draftsperson to go through a folder that contains hundereds of drawings we received from our client. Some of these drawings were standard details we already had on our office server and I was instructed to copy the remainder of the drawings we do not have into its own seperate folder. I wrote this python script to help automate the process. This is my first real world problem I had to solve with programming, no programming tutorial assignment brief or given requirements. I had to create my own brief on what I want this script to achieve. I'm proud of this one!
Create a Python script that compares the file contents of Folder A (containing all the drawings) with Folder B (containing a portion of Folder A's drawings) and copy the remaining drawings to Folder C.
Meet the outcome mentioned in the brief above.
I learned how to work with importing and using libraries to make this script work. This involved lots of research and reading though the library's documentation. Also reinforced the concept of reading and writing data to a file. I was very satisfied when this finally worked.
This was just a passion project I worked on for fun one weekend. I decided to challenge myself and created Rock Paper Scissors Lizzard Spock instead of the normal version of the game.
None
Create a workable version of the game.
I learned how to set up a game loop that keeps looping until a certain condition is met. How to anticipate unexpected input form the user and write code that deals with that. I also reinforced the concept of doing lots of planning before writing a single line of code and taking a staged approach to solving a problem.
Those who have had to work with the RMD Megashor system before know how tedious it can be to work out what modular length you require for a given prop height. I’ve decided to automate this process by writing a Python script that returns a dictionary of required Megashor shoring lengths when given a clear prop height. My intention is to take this further and integrate this script with Revit and Dynamo to automatically import the 3D Cad blocks of the various shoring components and reduce overall drafting time.
Create a program that automates the calculation of RMD Megashor modular prop components, given a prop height.
I learned that walking away from a problem and revisiting it with a clear mind can do wonders for the outcome of the program. I struggled to crack the main logic of the program and was stuck for a few days until an elegant answer presented itself to me one morning on the train to work. Within 10 minuts after removing the old, verbose code and implementing the new I had the program working like I wanted.
I am a professional software developer working remotely in Australia.
I have worked in the field for the past 2+ years, with most of my experience as an Automation consultant in the RPA space.
I also have a background in Structural Engineering and Drafting.
I am a lifelong learner, interested in solving problems and building software that can make a positive difference in the world.
UiPath Certified Advanced RPA Developer v1.0 (UiARD)
UiPath Certified RPA Associate v1.0 (UiRPA)
COMPLETE PostgreSQL BOOTCAMP 2020: GO FROM ZERO TO HERO
INTRODUCTION TO PYTHON: ABSOLUTE BEGINNER
INTRODUCTION TO PYTHON: FUNDAMENTALS
RESPONSIVE WEB DESIGN
JAVASCRIPT ALGORITHMS AND DATA STRUCTURES
BACHELOR OF TECHNOLOGY: CIVIL ENGINEERING
NATIONAL DIPLOMA:
CIVIL ENGINEERING
"I can vouch for his character and ability. He was hard working, efficient, conscientious and willing to co-operate and he posesses a very pleasing personality."
- Graham McGregor | Civil Engineer -
"Zjak is an enthusiastic person who enjoys his work, the result being that he learns quickly and has grown in his abilities in a relatively short period. He makes a valuable contribution to the company."
- Ted Kelly | Structural Engineer -
"His positive attitude and willingness to learn, has shown in his work ethic and in his warmness to his colleagues."
- Joanne Rodrigues | Office Manager -
2013 DEC
Successfully completed Diploma in Civil Engineering
2011 JAN
First home adsl internet connection (1Mbps download speed)
2015 JAN
Started working at EAS Consulting Engineers as a Civil Engineering Technician
2015 DEC
Successfully completed Bachelor of Technology Degree in Structural Engineering and got promoted to Structural Engineering Technologist
2017 FEB
Started the Australian immigration process
2014 JAN
Adopted a cat
2019 JUN
Emigrated to Australia
2019 AUG
Started work as a Structural Draftsperson at Lindsay Dynan Consulting Engineers
2019 SEP
Started learning how to program
2016 FEB
First time standing up on a surfboard
2020 JAN
Completed freeCodeCamp's Javascript Algorithms and Data Structures course, representing 300hrs of course work
2020 FEB
Completed freeCodeCamp's Responsive Web Design course, representing 300hrs of course work
2020 MAR
Completed Microsoft's Introduction to Python: Absolute Beginner course
2017 APR
Got married
2020 MAR
Completed Microsoft's Introduction to Python: Fundamentals course
2020 AUG
Completed my online portfolio website from vanilla HTML, CSS and Javascript and hosted it on Amazon Web Services
2020 OCT
Completed Pierian Data's The Complete PostgreSQL Bootcamp 2020 course
2021 MAR
Completed my first React (with Redux) project, that calls the github API and paginate through page results
2021 JUL
Landed my first full time job as a RPA Developer at Blackbook.ai
2021 JUL
Successfully completed the UiPath Associate certification
2021 NOV
Successfully completed the UiPath Advanced certification
Want to talk or work together?