My new clients have brought me down to London, where I’m staying in a penthouse of a friend of mine overlooking the London Eye, Big Ben and the sparkly city lights, which is pretty amazing. I am getting quite used the buzz of the big city but look forward being back in Edinburgh, where life is just a little bit slower…
This week’s developer interview goes to Diego Campo, a very talented developer who I worked with during my time in Barcelona. Enjoy!
Name: Diego Campo
Bio: Senior Java Developer at Enormo.com. Have managed a small team of 3 people using Agile methodology.
4y development experience.
Worked and studied in the UK(Cambridge, Nottingham) and Spain (Zaragoza, Barcelona).
Interested in psychology and creativity in art & life.
Specialities: Backend development. AI, Information Retrieval. Java expert.
Question 1 (Colin Brown): Over the past 2 years mobile web browsing has become far more common and accessible, gadgets such as Apple’s iPhone has helped to raise the bar in this field. How important do you think developing websites for this medium is? Should mobile browsers, such as Mobile Safari be one of the web browsers we build websites to comply with?
Diego: I’m not very much involved with mobile business, so I think my opinion will not be very relevant in this subject. My use of advanced mobile applications is none.
Diego: Flash will probably remain being the leading technology in its niche, but its use may be reduced to those applications where Flash does give that extra plus, as opposed to some overuse of Flash we saw in the previous years.
Question 3 (Diego Campo): Have you thought of changing your career during the last year? If so, which one?
Diego: Yes. Psychotherapy. At the moment is only a thought, although I’m following a course for the last two years and always have had an interest.
Question 4 (Colin McMillan): As a developer you need to keep on top of emerging technology. Given that there aren’t enough hours in the day, how do you decide what technologies or languages to pursue?
Diego: Depending on the areas that I want to expand. For example, right now as a Java backend developer, I have an interest in Scala and functional languages such as Clojure. But also, I’d like to know more about web developing languages such as Ruby or PHP, since I’m also thinking on some ideas for projects for the web – so I could myself build some prototypes.
Question 5 (David Poblador): How has open-source/free software changed the way you develop software?
Diego: I began to know about it on early university years. It looked like an utopia an the beginning, but as I saw how real it is, then it was clear to me it is one of the greatest initiatives in technology ever. I remember to have thought it’s the last revolution we’ve seen in the developed countries.
Question 6 (Kilian Valkhof): What do you strive for most in your code?
Diego: Clarity, testability, readability, structure.
Question 7 (Catherine Bartlett): Tell me about the best developer you’ve ever known.
Diego: He is very active, and he has an extreme ability to switch from general abstract concepts to the very detail in no time. He has a passion for producing the best solution for a certain problem, and able to explain his ideas properly, and to produce super-clear specifications. He is very flexible and always focused on the problem, while also taking care of the pieces of his team as a system itself, including coworkers and subordinates. He has deep human principles and strives for transparency.
Question 8 (Erik Vold): What are some of the new technology trends that you think we will see in this century?
Diego: I don’t know which ones they will be, but I bet they will come from countries where technology and internet implantation is growing now. A huge market in terms of population is to be open, and it will create new needs to be satisfied. Thus, it may not be so much about innovation in technology, but about a better use of it.
Question 9 (the contributer would like to remain anonymous): How much of your work time do you spend analysing defect reports so that future instances of the same defects may be mitigated, or altogether removed from future builds?
Diego: I consistently write test cases to prevent this. I spend about one to two tenths of the developing time writing these tests.
Question 10 (Alan Graham): We are bombarded every day with new approaches, new libraries (Prototype.js vs jQuery, Java vs .NET, PHP vs everything), new free services (Google Analytics vs ???). What criteria do you use to quickly decide what to use?
- Suitability for the project.
- Actual expertise of the team on certain languages,
- Maturity of the tool and documentation.
- Usage, support and coverage on the net.
Question 11 (Richard Kelly – fellow online marketing dude): How much of a pain do you find developing and re-developing code for SEO?
Diego: I am not facing this problem in my daily life. But I think that I could be a bit annoyed somehow if I suspect that the changes are done due to a lack of planning and knowledge.
Question 12 (Felicitas Betzl): Having worked in a variety of agencies I’ve seen major collisions between account/project managers and developers for a variety of reasons. Can you think of 5 tips you can give account and project managers, which you think would make developers lives easier?
Diego: One of the major differences I have seen is that account and project managers sometimes tend to be too short-termish on their decisions, many times driven by emotions such as fear, anxiety and need for self-assurance. Developers tend to give credit to well-traced plans and if you are able to do that, you will not have to do anything to get the respect from developers. Developers tend to like clear long-term decisions, transparency and truth. They are also sensitive to confusion, and they will normally identify as weakness if you just try to hide it – and they will really appreciate if you just come to them to ask their opinions.
Question 13 (just for fun): What is your favourite cartoon character?