Why?
This was for an in-house product at the agency I worked for. It was also one of the earliest projects I worked on at the company. It was a learning experience for both me & the company.
Relevant contributions
- Frontend development
- QA development
Major tools
Frontend:
- React
- Javascript
- AdminLTE theming
- SASS
- Instagram API
- Facebook API
Backend:
- PHP
- Yii2
- Docker
Testing:
- PhantomJS → Casper.js → nothing
Process
-
Planning phase
- This project was unusual because we worked directly with our client's project management team & their Jira board instead of our own.
-
Working out tickets
- We set up Docker containers for local environments.
- I would work on the frontend feature & bug tickets.
- Created automated user acceptance testing. until our testing frameworks were deprecated.
Hurdles
-
It was a minor hurdle to implement the wizard from our codebase into our client's marketing site.
- A different codebase controlled by a different team & company.
- We worked with our team's connection point with their team to get it done.
-
Our client was very adamant about implementing the Instagram & Facebook APIs,
but when the APIs deprecated, the client refused to renew anything.
- We removed the dead APIs from the wizard & backend panel.
- There was no "diffuculty" per se', but it was very confusing & I still think about it a lot.
-
I was mercilessly hounded & harassed to make automated user acceptance tests for this application.
- This was the first instance of this type of tests our agency ever used.
- I was an intern at the time & knew nothing about testing, & very little about early React.
- I learned it & did it, but I have a very complicated relationship with writing tests because of it.
What did I learn?
- Using React, & implementing API calls with the Fetch API.
- User acceptance testing.
- Building with Docker containers.
- A little about PHP.
- The joys & eldritch horrors of early stage GANs image generators.
What would I improve if I did it again?
- Those APIs deserve to be re-implemented in the wizard. They added that extra 🧑🍳😙🤌
- Use Cypress for user acceptance testing.
- More support for accessibility in at least the wizard.