DMRI Placement - August 2017


Post Date: 02/09/2017

Before starting my placement, I was very nervous about whether I would know what to do and could do things they asked of me. This is called imposter syndrome and is very common place in the software engineering industry but after this month I can say for certain that I’m not really feeling this anymore, the work I was tasked with I was able to do without much problem. The only things I've had trouble with was knowledge of the company and their code base, which takes me onto the 2 big things I’ve learnt in my first month.

As expected, when I was first tasked with making changes to the code I felt like a fish out of water. I’d never worked on such a large codebase nor made changes to the code that could potentially affect a company’s revenue if I were to make a mistake - fortunately, I’ve made no major mistakes (yet…). However, after consistent work I've managed to get my head round most of it.

I’ll admit, it probably took me longer than it should have for me to understand how the company makes money. But I eventually managed to figure it out Which is that we sold leads (basically data of people’s information) which we got by them entering competitions on our site(s) and opting to certain question blocks (a question that a company has set up which gives people the option to hear more about what that company is offering), the company then using the people’s data who have opted in for their marketing campaign. (Of course, if people don’t opt-in they won’t receive anything) All of this was done through a web app that was built in-house called The Data Platform, I’m still trying to get my head round how it works, so I won’t say much about it in case I say something incorrect it.

One of my first tasks involved updating the automated emails you get when you sign up to our sites (registration, forgotten password etc). The (now old) emails we had were, to put in bluntly, pretty bad. After looking at some existing emails from other sites, I had decided I wanted to go for the flat design style. One thing I really wanted to so was some icons in that style, however since my graphics design styles are limited I had to source some free to use icons that I could use. This was also a first, as images, icons etc I’ve used before were for personal projects with no intent of making money so I could grab the best looking one without legal issues. I eventually found some but I had to put my limited graphics design ability to work to make them look flat (Yes, I know I’m in a technical role but I didn’t mind as I do always enjoy a little bit of graphics design). The final product was something I was happy with.

If you are ever tasked with working with HTML emails, all I can say is good luck. (It’s like how you need to your website to work for different browsers, but 10x worse…)

Another task of mine was to do with a company’s campaign (A feature in The Data Platform that is basically used to allow a company to collect leads from our competition websites). They wanted me to send over the leads they collect, this was nothing too special but I did manage to pick some excel skills in the process.

An unexpected tidbit I learned was how the design of certain aspects of a website (such as the layout of things, simple registration process) can really affect traffic which in turn affects revenue. Even if overall a website looks fine, one badly designed feature of your website could really affect your traffic. In retrospect, this seems pretty obvious as I myself have turned away from a website if I feel using the website is a bit clunky, but it just never clicked that it would affect revenue.

Those were my 2 main tasks for this month, other than that I’ve done maintenance (mainly front-end with a little bit of backend) on our websites. I’ve also done some quality of life/bug fixing work to the backend of some of our in-house systems.
Although I’ve not really learnt too much in terms of new programming stuff. I have learnt a lot about the company and how their code works, which I feel is a necessary stepping stone to learning bigger and better things.