Over a million developers have joined DZone.

#ITMustChange2014 – Market Risk Role Java Job Question 2011

· Java Zone

What every Java engineer should know about microservices: Reactive Microservices Architecture.  Brought to you in partnership with Lightbend.

This is one old Java question from 2011 that landed on my desk. Admittedly, at the time, I was really looking for permanent role, senior Java developer in investment banking in London. I had given up on searching for that perfect banking Scala programming role, I went back to job hunting on Java EE 6, Spring, whatever I could find and I sent my CV down for Java developer in Markets Risk at some big bank. The context here was I had to write a Java project before I could get a vital face-to-face interview. Here is the reveal:


Please see below test for Market Risk at INVESTMENT BANK in the CITY.

Imagine this is a tasks/features in your current job and do everything you would to make a real-world task complete (e.g. javadocs, etc.).

import java.util.Map;

 * Design a class to implement the StringUtil interface
public interface StringUtil {

         * sortChars - return a string containing all the characters of the input string, sorted in ascending order
        public String sort(String input);
         * reverse - return a string containing all the characters of the input string, in reverse order
        public String reverse(String input);
         * distribution - return characters found in the input string, along with a count of their occurrence in the string (order is unimportant)
        public Map<Character, Integer> getDistribution(String input);

         * distribution - sort the characters of the input string and return the first n
        public String getFirstNSortedChars(String input, int topN);
         * get characters in input string ordered by frequency of occurrence
        public String getUniqueCharsSortedByOccurrence(String input);

         * get the character(s) that occurs most frequently in the input string
        public String getMode(String input);


Unfortunately, I did not get very far in the process. It transpired that they were after experts in multi thread programming. I wondered then why did they not say so on the job specification or why the Java test did not reflect the true duties of the role?

Microservices for Java, explained. Revitalize your legacy systems (and your career) with Reactive Microservices Architecture, a free O'Reilly book. Brought to you in partnership with Lightbend.


Published at DZone with permission of Peter Pilgrim, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}