Hey! It looks like you're using an old browser - here at Makers we are always looking to use the most cutting-edge features the web offers and unfortunately your browser doesn't allow us to do this. We know you can't always switch, but we strongly recommend using the latest versions of Mozilla Firefox or Google Chrome.

Leo's story

Interviewing at BBC

Scala

I moved to the UK to study Sound Engineering at University of Surrey, which was a lot of fun. During my time at University I realised I did not want to work as a sound engineer full time and also wrote my first line of code and fell in love with it. Coding became my main passion, but remained a hobby as I already had a job to go to once I graduated. I have worked in the Residential Home Technology industry as a Design Manager, then Design & Project manager, but eventually realised writing code is what I really wanted to do. I resigned and joined Makers, which has been an amazing learning experience. I am now looking forward to joining a company where I can make a difference as a junior developer, contributing with my skills and positivity. I subscribe to Agile/XP values, and would like to carry on pairing and test-driving development in my work as a software engineer.

Code sample


            # Understands how to render a query's answer as a string
            
            class AnswerPresenter
            
              def self.stringify_answer(query)
                new.stringify_answer(query)
              end
            
              def stringify_answer(query)
                query[:valid] ? assemble_answer(query) : INVALID_QUERY_MESSAGE
              end
            
              INVALID_QUERY_MESSAGE = 'I have no idea what you are talking about'
            
              private
            
              def assemble_answer(query)
                stringify_operands(query[:operands]) + ' is ' + query[:answer_value].to_s +
                  (query[:credits]  ? ' Credits' : '')
              end
            
              def stringify_operands(operands)
                operands.join(' ')
              end
            
            end
            

In this code, I like how the methods are very simple and the abstraction level is consistent, with most abstract at the top moving to most concrete at the bottom.

Want to hire developers like Leo?

Request a call