Shoniwa Marovatsanga

Blog

I am a junior full stack developer looking to learn and work on creative innovative ideas that can have a positive effect on the world. One of my core beliefs is the concept of social responsibility, as an individual I want to make sure that the majority of my life's work goes towards improving people's lives in any shape or form and I believe continuous learning may be the key to achieving this.

I found Makers Academy very beneficial to my growth as a developer as I was taught the two sides of being a great professional developer. On one side I was taught the best practices when it comes to creating good expandable software and writing good code. On the other side Makers Academy gave me a great environment to learn and practice the Extreme Programming XP values in an environment that closely simulated real work environments.

Projects | Skills | Education | Experience | Interests |

Projects

Project Repo & Site Description Technology 🔧 Struggles 😣 Enjoyed 😃
Blog Repo
Live on Google Cloud Platform
Currently moving from a wordpress blog to my own created blog so I can have more creative control over my content and the way it's shaped and published NodeJS, ReactJS, Redux, React Router Dom, Sass, Redux Thunk, Firebase CMS, ExpressJS. Testing: Jest Using React Router Dom for client side routing is quite a challenge and provided a few difficulties however I've been able to overcome each issue I've hit thanks to the react community Really getting to grips with designing the frontend with Sass and using that with React to make something which looks quite nice
Developer's Dictionary Repo
Visit the Live Site
A fun and engaging definitions resource for software developers. MongoDB, Express, Node.js, SVG, Bootstrap. Testing: Mocha, Chai, Zombie.js, Should. To make our project fun and engaging we decided to incorporate a wheel with all of our defined terms. It was hard to manage the implementation of new technology that we had not used before After having spent a few weekends practicing using a Javascript stack, it was good to finally use it for a project and the fact that our work is now live
Kuj-Ga Repo
Demo on Heroku
A restaurant finding app that uses the Google Places API to give the user a list of restaurants with website links and google maps directions JavaScript, ReactJS, NodeJS, Express, MaterialUI. Testing: Mocha, Chai, Sinon, Enzyme Working on an app on my own proved to a big challenge especially in the planning phase as trying to BDD through user stories I was missing a second opinion. I got a chance to finally use a front-end framework and really relished getting to use more ES6 and Promises.
Financial Times Headlines Repo
Demo on Heroku
An app that returns the latest news stories from the Financial Times using the FT API JavaScript, NodeJS, Express. Testing: Mocha, Chai, Sinon Finding my way around the Financial Times API was a bit tricky as it needs the content type sent in the header and the query string as an object. It also uses POST rather than GET to request information, which feels a little counter intuitive Designing the interface of the app to look like FT website was quite fun and using pure JavaScript for certain features was also very refreshing

Skills

Problem Solving 🔍

Solving problems is essentially the purpose of software developing, and so in order to be a good software developer it is important to be a good problem solver. Taking on board this belief I have worked hard to improve my problem solving skills and techniques by opening my self up to different programming situations and experiences, for example during group projects if a a pairing came across a bug I would work with them to solve it or if that was not possible I would enquire as to the nature of how they solved it in order to absorb some of techniques they could've used to find it.

Continuous Learning 📚

In order to improve something one must first understand it, and in order to understand it you must first learn about it. When I started working at Music Concierge I grew attached to this ethos and applied it to my daily work day always trying to learn a new way to make my job more efficient, to make my job easier but producing higher quality and it was a such a success that I decided to apply it every aspect of my life in order to improve my life and of those around me. On a daily basis I am always trying to learn something new, which could help me to achieve my goals.

Good Collaborator 💻💻

As the saying goes no man is an island, it is very hard for man to achieve great things working alone as collaboration has always been the key to innovation. In order to build the world we currently live in humans have always worked together to build a bigger and brighter future. In software development collaboration is an important part of every project from working in groups to deliver good products to pair programming in order to write great maintainable code, with this in mind I actively work to maintain a great level of engagement and participation on every project I take part in using the Extreme Programming XP values to try and make sure every project is a good experience for everyone.

Education

Makers Academy (January 2017 to April 2017)

  • Curiosity and intense drive to learn
  • Knowledge working and Problem Solving
  • Pair Programming, OOP, TDD, SOLID, MVC, BDD, Agile
  • Software Craftsmanship
  • Ruby, Rails, Javascript, Node.js, Rspec, Jasmine, Mocha, PostgreSQL
  • XP Values

Free Code Camp (January 2016 to December 2017)

  • Working with a development community
  • Knowledge working and Problem Solving
  • Creating simple Javascript Applications and Webpages
  • Javascript, Node.js, Jasmine, Mocha
  • XP Values

University of Westminster (September 2012 to July 2015)

  • Commercial Music
  • 2:1
  • Organised a number of concerts in some of London's legendary music venues.

Microsoft Technology Associate

  • HTML5 App Development Fundamentals

Experience

Honeycomb TV (June 2017 to present) Software Engineer

Music Concierge (November 2015 to November 2016)
Audio Engineer

Interests

  • Programming - Creating Apps and the like recently moved into mobile development with React Native and PWAs
  • Music - I enjoy both listening to music and creating my own when I have time
  • Blogging - Everyday I try to take a picture of one cool thing I see or to write about it. It helps me to always make sure that I appreciate the blessings in my life. My blog is available here
  • Games - Every few months I try to find a great game and immerse myself into it. My favourite games include Final Fantasy, Fifa, and Metal Gear Solid.