One of endjin's primary objectives is to do whatever we can to improve the state of the software development profession; not only in our day-to-day engagements with our clients, but also in how we try and provide opportunities for learning and growth for anyone who wants a career in our industry; we have our own apprenticeship programme, offer paid internships and offer school work experience placements. Last year Joshua spent two weeks with us and we taught him the basics of programming. This year Jack, 15, is spending two weeks at endjin and he's going to document what he learnt:
I arrived at the Endjin office around 8:45, I was brought into the office by Matthew who introduced me to everyone. After a Brief Health and Safety talk Matthew started to explain about how they solve companies tech problems using innovative software solutions. He gave examples of practical uses of software and code that Endjin have used to help multiple companies.
I was then shown over to Alice's desk and she showed me how she was checking individual aspects of a set of Selenium tests by running them to see if they were working or if unfortunately there was an error. She explained how to run just one line of the coding at a time (debugging the code) to see what part was not working to get to the exact root of the problem. Alice then fixed one of the errors by using Selenium to maximise the webpage so the test could select a the link which was being hidden by another element. I watched her write a professional email to ask a client, and after lots of proof reading and subtle changes the email was sent.
Starting a new project
After this I was then put into part of a group (comprising of Alice, Pascal and myself) that were about to start work on a new project. The project was for a customer that were planning to launch a new website. This involved a new layout and signing up process among other things. We had been given the wireframes for the website showing the webpage layouts and we organised these into groups of related pages, for example all of the Registration webpages were grouped together so it was easy to see the way they had envisioned this working. This was a harder task than I originally thought it was going to be as what we thought would go together, on further examination, sometimes did not. The process involved a lot of discussion to eventually make a unanimous decision. The result of this stage was a set of cards describing the key features that the site would have.
Writing user stories
We then had to make cards to describe the user stories for the website, which are every possibility of what the user of the website may want to do on each page. The structure we used to write the User stories went along a basic guideline which was, As a (User) I want to be able to (Perform a task) because I want to get a (Benefit). This was a long process because there were so many possibilities on each web page to write up the scenarios for.. After getting part the way through hunger was starting to come upon us so we went out to get lunch, Pascal and me got noodles. After dusting off lunch and having a chat about the football that was on tonight we got back onto the job at hand. After creating some main topic groups and splitting these up into more sub-groups it became easier to the see the main tasks that users would want to do. We then started to stick the cards with each of the scenarios onto the wall, there were 85 of them in all showing just how many things users might want to do on the site!
I then made a rough sketch of what the website site map would look like and we found some discrepancies regarding how you would get to some pages.
After using X-mind which is a really helpful application when mapping out a website layout, and Pascal helping me to learn the different shortcuts, we called it a day around 6:30ish.
End of the first day
My first day was very interesting and really gave me an insight on what working is really like and how to work in a team and to discuss. I am really excited to continue working on this project in the following days and to learn more useful skills on the computer!