Apply Now    

Software Engineer

Req #: 180014521
Location: London, ENG, UK
Job Category: Technology
Job Description:
Ideal candidates should come from an Derivatives Application Development background, focusing on Server Side development with intensive data processing, having exposure to complex architectures and possess ability to take requirements from conceptual designs through physical implementations. Preferable past development environment would be in Java, Python, Linux with SQL. 
Potential Candidates MUST have experience with and are enthusiastic about developing in Core Java programming for both back-end processes as well as middle-tier processing. The responsibilities of this position include but are not limited to writing Java programs in pure Core Java to facilitate both real-time and batch processing. All processes will be deployed to Unix/Linux environments; therefore a strong working knowledge of Unix/Linux is required. These programs or processes will have heavy interaction with a DMBS so a strong working knowledge of SQL with a fundamental understanding of DBMS concepts is also required.
ALL potential candidates MUST be able to work in a dynamic team environment which includes developers working with different technologies Java such as UNIX, Python, Perl, etc) across multiple regions, and be able to collaborate and integrate their application components with other team members and other system development groups.


+ Python
+ Core Java (Java 8)
+ Extensive experience with Core Java coding.
+ Collections (Lists, Maps, Sets)
+ Multi-Threading
            + Synchronization
            + Thread creation and control
+ Exception Handling
+ Extensive Direct JDBC experience
+ Strings and I/O
+ Ability to read large raw data files and parse them into   
  usable tokens for DB Loading or other processing.
+ String Matching and Manipulation.
+ Reading and Writing from/to Properties Files
+ JSON   
      + Fixed Length and Delimited files.
+ Familiarity with SAX, DOM, STAX, JSON Parsing, etc.
+ Reflection and Interception Techniques
+ Knowledge of Lambda Expressions is a plus
+ Good use of Logging, STDOUT/STDERR Redirection
+ Ability to create Standalone Processes that are both scheduled
  based execution as well as Daemon Processes.
+ Inter-Language Integration Techniques (ie Java to/from C# and
  Java to/from Python; passing data back and forth both 
  synchronously and asynchronously, Remote Method Invocations
  across languages).
+ Strong understanding of Java Memory Model
      + Garbage Collection
            + Ability to troubleshoot Memory Leaks
      + Young/Old/Permanent Generation
      + Stack Space
+ Deep knowledge and experience with OOP/OOD in Java
      + Interfaces, Classes, Polymorphism, Inheritance
      + Design Patterns (GoF Patterns)
+ Modern Java Web Application development is a big plus, including modern JavaScript frameworks as well as ExtJS.
+ Database:
      + SQL
      + Transaction Management / Control
      + Data Modeling
      + Key Structures
      + Indexing
      + Stored Procedures
      + Performance Tuning
+ Unix/Linux experience
      + Fundamental understanding of operating system
            + Processes
            + File System
                  + File Types
                  + Hard / soft links
                  + Permissions
                        + Types
                        + Groups
            + Directories Structure and Navigation
            + Understanding of device mounts
                  + Local Disk vs NFS
      + Proficient at command line (ls/find/grep/less)
      + Experience with shell scripting (Bash/Korn)
+ Maven
+ Repository experience including GIT and/or SVN
+ Autosys, Cron, Control-M or other Job Schedulers.
+ Enterprise Messaging experience
      + Experience with messaging processing using JMS
+ AMQP implementations: Qpid or ActiveMQ
+ Web Services Development:
+ REST Web Services (JAX-RS)
+ SOAP Web Services (JAX-WS)
+ Custom HTTP Servlet web-services based implementations
+ Any Python, Perl, Shell, or other Unix based scripting languages.
+ Experience with Application Servers:
      + Tomcat, Weblogic, WebSphere
Apply Now    
Link for schema

Join our Talent Community

Not ready to apply? Leave your information with us and we will keep you up to date with new career opportunities.

Other Information

Apply Using LinkedIn

You can also apply using your LinkedIn® profile. It may save you some time because your information will be automatically transferred into our system. Just click on the LinkedIn logo when you get to the application screen and follow the directions.

Submit an Updated Résumé

During the application process, be sure you have an up-to-date copy of your Résumé, your cover letter and any other documentation you would like to submit.