| Skills | Work Experience | Education | Coding Examples | Interests |
I am responsible, hard working and a good team player.
I'm looking for an inspiring Developer role (probably full stack but does not have to be) where I can continue to learn new things every day, in a development team creating innovative and helpful applications.
Having spent a great deal of time learning Javascript, I feel that I am strongly positioned to step into a role that will utilise these skills. However, I will gladly learn any new language/library in addition to the ones I know. My latest role has been Java oriented. I love to solve problems (I consider myself to be very good at it) and I love to learn new things and get to grips with new technologies. I get a huge amount of satisfaction from getting computer programs to function as I intend them to, by writing code.
In the business consultant/analyst roles I had during the latter half of my career, I often acted as a translator between the needs of software users and the development teams. These years of work experience honed my problem solving skills. I can now apply these skills in the role of developer.
Over my career, I have also developed a great eye for what makes software well designed from a user's perspective and what makes for a pleasant user experience. I have now also added strong backend coding and database design to my list of skills.
I always take great pride in my work and am meticulous in my attention to detail.
- Languages: main:[Javascript, Ruby, Java], secondary: [PHP, Python]
- Web Frameworks: [Node, Express, React]
- Real-time: [socket.io]
- App Deployment Platforms: [github.io, heroku]
- Version Control: [Git (Command line, github.com, GitHub desktop, Git bash, Sourcetree, Fork)]
- IDE's and editors: [Visual Studio Code, Atom, Sublime][Netbeans IDE][Eclipse IDE][Pycharm]
- API testing: [Postman][Swagger-UI]
- Testing: [Jest, Rspec, Jasmine]
- Web page: [HTML, CSS, JQuery]
- Databases: [SQL Server(SQL Server Management Studio), postgreSQL, MongoDB, mySQL]
- API's: Proprietary API's: [In house API's to handle database interactions], Third Party API's: [Google, Youtube, Outlook, Weatherstack, Wikipedia, Unsplash, etc.]
- Other coding skills: [Regular expressions]
Not all experience has been listed above - see 'Education' below for more details.
- Learn new processes and software quickly
- Very strong programming/logical and numerical abilities
- Full project lifecycle experience
- Strongly computer literate with an excellent working knowledge of a wide variety of application programs, (strong skills in Excel and MS Access) and Enterprise Information Systems
- Strong software and user interface design knowledge
- Strong financial/accounting knowledge
- Self motivated, conscientious and responsible
- Strong communicator with excellent written skills
- Confident and effective in relating to people
- Organised and methodical
- Personable and professional in manner and presentation
IPS (Integrated Payment Solutions) - Software Development Department (Nov 2022 - present), UK
Developer - Card and Access Control Systems (including printing and encoding of cards), Tills, Restaurant Ordering, Visitor Management, Active Directory, Data Integration (to connect to client MIS Systems), etc.
IPS has multiple clients with bespoke installations of their products running on Tomcat servers on the client's network. The programming languages used are Java (full stack), and Javascript (React) front end/ Java back end, with SQL Server databases.
Access to client sites is via Teamviewer, Remote Desktop and VPN.
Main projects/achievements and tasks:
- I have almost completed developing 2 Timetable Apps (full stack) that utilise the information contained within Tribal EBS (a major student information system). There are currently 2 separate apps:
* The first app is an mobile phone app that will read a student's swiped mifare access card (using the NFC ability on the mobile phone) and bring up the timetable details for that student showing current and next lesson location and times. The app also allows the student to view their timetable for any day of the academic year. Student safeguarding information is incorporated including emergency contact details which can be accessed from the student's access card.
* The second app is set up on a raspberry pi device with an interactive screen and it will be located outside a classroom displaying the current and next lessons for that room. The client this is being build for will have approximately 300 of these. The room timetable will also be searchable for any day of the acedemic year.
Both Apps have been written in Java using the Springboot framework, Thymeleaf (template engine) using a SQL Server database. I have designed and built these 2 apps entirely myself and I have also built dummy systems to demo these apps.
The android side is basically a shell for the main java program, passing the card number as read by the Android phone's NFC to the main Java program. The Android side was not developed by me. - Major changes (full stack) made to the Restaurant Ordering System SQL tables reflecting an improved way of storing bill items in the database. Additional features added to the software such as ability to create a restaurant tab, which can be converted to a restaurant table. Cosmetic changes also made to greatly improve the look of the product (html and css). The system has a React front end, Java API backend and a SQL database. Changes were also required for the amended restaurant app to integrate with the till app. All changes designed and built by me.
- Monitoring system set up to extract key data from client database systems using SQL Server Agent tasks and send it by mail as csv attachments to a dedicated mailbox. The data is then extracted and summarised on a dashboard webpage to highlight problems early. Built using the MS Outlook REST API, Javascript and nodejs. The whole system was designed and built by me from scratch.
- Changes made to Visitor Management software (Java full stack) to make it easier for a visitor to use and improvements made to admin side of the software. Changes made to the checking in process to record more specific location. All changed identified, proposed and developed by me.
- Compiled extract files (based on client spec) of cash register transactions from the client's till transactions database and placed these in a network drive for the client's system to pick up and input to their own accounting system.
- Extensive work with SQL Server databases including tables, queries, views, stored procedures, SQL Server mail, SQL Server Agent, database replication, restoration and backup.
- Building and deploying updated software to client sites.
- Bulding power BI dashboards using the client financial information we hold in our databases and the information contained in Paxton Net2 (access card control systems provider).
- Setting up Tomcat servers and card printers/encoders.
- Amending base software products and updating in company git repository.
- Problem solving support issues for different software products on client sites.
Software Used:
- Netbeans - Java - full stack and backend API calls to SQL database when using React front end
- Visual Studio Code - React (Javascript) - front end code
- SQL Server - Database
- Fork - used with Git to control software versions
- Postman - API testing
Self Employed (May 2015 to Oct 2022)
Building, developing and maintaining websites for clients.
AccessPay - Consultancy Division (April 2014 - May 2015), UK
Project Management and Implementation - Payments solutions software
Managed implementations of bespoke cloud-based payment and cash management solution projects (mainly BACS and SWIFT) working with a technical team based in India.
Demica Ltd - Consultancy Division (January 2007 – March 2013), UK
Implementation Consultant - Invoice backed finance software
Managed securitisation projects and was part of a team for some very large and complex multinational securitisations each with funding amounts between €250m and €500m.
2006 Gap year of travel.
AMT-Sybex - Consultancy Division (Nov 1999 – Dec 2005), UK,
Implementation Consultant - MIMS (Ellipse)
Multiple positions encompassing the whole project lifecycle within very large asset maintenance projects.
1993 to 1999 Accountancy, internal audit and external audit roles.
I have a more detailed CV that covers the above roles.
Only education relevant to development has been included. I have done many courses that I have not listed here.Recent Courses
Power BI Dashboard - Altis Consulting - Completed 28 Feb 2024 (1 day)
Learn Python 3 - Completed 10 August 2022 (25 hrs - total course)
Course content - https://bit.ly/2ze7WpX
control flow, lists, loops, functions, strings, modules, dictionaries, files, classes, code challenges, Jupyter Notebook
One Week Python - Completed 11 September 2022 (14.5 hrs - total course)
Completion Certificate: https://bit.ly/3xi1oEO
Course content - https://bit.ly/3RWI0ow
Python variables, Strings and string methods, Booleans, Conditional Logic, Boolean Logic, Loops, Functions, Scope, Lists, Dictionaries, Sets, Tuples, *args and **kwargs, Working with errors, Custom modules, 3rd party modules, PIP, Object Oriented Programming, Classes
Modern React with Redux - Completed 3 August 2022 (52 hrs 37 mins - total course)
Completion Certificate: https://bit.ly/3BFCNN5
Course content - https://bit.ly/3tgkc4v
Sample React websites built: (Widgets - https://bit.ly/3J5JSYk), Videos - https://bit.ly/3vMtGr8), (Pics - https://bit.ly/3MpSLhn)
Master React and Redux with React Router, Redux Thunk, Webpack, and Create-React-App. Includes Hooks!
Working with older versions of React
The Complete Git Guide: Understand and master Git and GitHub - Completed Feb 2022 (23 hrs)
Completion Certificate: https://bit.ly/36JSDZF
Course content - https://bit.ly/33hpUdg
git, Github, SourceTree
The Complete Node.js Developer Course (3rd Edition) - Completed February 2022 (35 hrs)
Completion Certificate: https://bit.ly/32QQ4Dr
Course content - https://bit.ly/3oiRQVv
Node, Postman, heroku, REST(get,post,patch,delete + http status codes), mongoose, MongoDB, express, GIT, Robo3T(MongoDB), promises, async await, bcryptjs, jsonwebtoken, Jest, supertest, socket.io, momentjs, mustache, qs
JavaScript - The Advanced Concepts (2022 Update) - Completed December 2021 (25.5 hrs)
Completion Certificate: https://bit.ly/3sHmivg
Course content - https://bit.ly/3gj1K54
Ruby - Basics through to OOP, classes and modules - Completed December 2021 (10 hrs)
Course content - https://bit.ly/3I02BUg
Makers Academy (August 2016 to December 2016)
A 16-week intensive development bootcamp, emphasizing:
pair-programming, test driven development, object oriented design, agile methodologies.
- OOP, TDD, SOLID, MVC
- Software Craftsmanship
- Frameworks: Ruby (Sinatra, Ruby on Rails), Javascript (Meteor, Express), Python (Django)
- Testing Software: Rspec, Jasmine, Capybara, Chimp, Mocha/Chai
- Databases: Postgresql, Mongo DB, mySQL
- Software version control: github
- Other: Jquery, node.js, ajax, css, html, bootstrap, regex
ReactJS
Adobe Photoshop® CS5 Associate Certification
SASS
Coding Practice - https://www.codewars.com/users/glynester - There are 8 coding proficiency levels - the top level is level 1.
It took about 6 years of solving coding problems to reach level 1. https://docs.codewars.com/gamification/ranks/#required-score
Approx 2,500 coding problems solved. My current levels are:
- Overall - level 1, 0.1% complete
- JavaScript - level 2, 57.4% complete
- Python - level 6, 58.8% complete
- Java - level 6, 85.0% complete
- Ruby - level 3, 44.9% complete
- SQL - level 5, 37.4% complete
- PHP - level 7, 12.5% complete
Bachelor of Commerce (Accounting) University of Natal - Pietermaritzburg
3½ years accountancy articles - KPMG Zimbabwe
Institute of Chartered Accountants of Zimbabwe (ICAZ) board exam – part A
Project | Description | Link |
---|---|---|
My Github Account | My github repository containing all the code mentioned above. | goo.gl/5ntzXe |
Fake Shop | Shop display app using fakeshop API created with React and Redux | https://bit.ly/3CBHJlT |
YT API Videos App | Videos search app using Youtube API created with React and Redux | http://bitly.ws/wsTu |
Unsplash API Images App | Images search app using Unsplash API created with React and Redux | http://bitly.ws/wt2Z |
Wikipedia API and Google Translate API | Wikipedia search and Google translate (using API's) created with React and Redux | http://bitly.ws/wtAW |
Chat App | Real time chat room app created with Web Sockets (socket.io) and Express.js (node js) | https://bit.ly/3rnCxwQ |
Task Manager App | REST API (express, nodejs, postman), user authentication (bcryptjs, jsonwebtoken, validator), database storage (mongoose, mongodb), file uploads (multer, sharp), email notifications (sendgrid), testing (jest, supertest) | https://bit.ly/3se9ZET |
Weather App | App using asynchronous programming to access 2 public API's to return weather details (nodejs, request) | https://bit.ly/3usVZd8 |
Maths Game | App written in React | https://bit.ly/3k1WIPs |
FT news headline aggregator | List of FT news headlines with search functionality. Uses FT Developer APIs and Express.js (node js) framework. | goo.gl/Y4SWZ4 |
Demo coffeeshop cash till | Demo coffeeshop cash till - written using object oriented javascript (JQuery), data comes from remote JSON file and a Jasmine test suite (append "SpecRunner.html" to address to run tests). | https://bit.ly/3odeCet |
Demo thermostat control | Demo thermostat control - written using object oriented javascript (JQuery) with a slider bar plugin and a Jasmine test suite (append "SpecRunner.html" to address to run tests). | https://bit.ly/39eTCQk |
Login Demo System | Fully functional login system - written using PHP and javascript with a mySQL database and incorporating Google's reCAPTCHA validation. | https://bit.ly/3iKbju3 |
Data Collection Form | A configurable data collection form showing the configuration controller, the data collection form, and the data collected from the last input, all on the same page. Written using PHP and javascript with a mySQL database. | https://bit.ly/36a3hWh |
Expense Sharing App | Fully functional expense sharing app - written using PHP, javascript, jquery, ajax with a mySQL database. Use a login ID of any number between 1 and 7 to gain access. More information is available in the help section of the website. |
Group Projects - repositories
Project | Technologies | Team Size | Time Taken | Link |
---|---|---|---|---|
I'm in | Javascript (Meteor) | 6 | 2 weeks | goo.gl/BVUyPZ |
Unchained Blog | Python (Django) | 6 | 1 week | goo.gl/zbkZm3 |
Makersbnb | Ruby (Sinatra) | 4 | 1 week | goo.gl/HMKKcY |
Individual Projects
Project | Technologies | Link |
---|---|---|
Instagram-clone | Ruby on Rails | goo.gl/HGuiKT |
Bowling scorecard | Javascript | goo.gl/1eg4LQ |
Prior to training at Makers Academy, I also created a number of web applications using php, javascript and mysql - e.g. see "Expense Sharing App" above.
Travel, photography, programming and web development, learning languages, playing the guitar, reading, film, theatre, music, etc.Sports mainly tennis (I play league) but also most other sports such as squash, badminton, table tennis, cricket, football, swimming, etc.