Principal Software Engineer (C# / .Net, Big Data) (14047) Newark, California
If you are someone who is not content with just writing code, but rather wants to understand how and why things work “under the hood”, we want to hear from you!
The Model Execution team (MEX) in Analytical Development at RMS is building our next generation distributed computational framework for analytical components. You will be a core contributor to the team, applying your senior-level software engineering experience to the development of RMS(one). The members of the MEX team have a wide range of skills: C#/.NET/C++/Java programming; distributed and fault-tolerant systems experience; big data management. We bring all these skills together in an Agile development approach to solve some of RMS’ toughest technical challenges.
You will have the opportunity to truly make a difference as we innovate from the ground up. In this role, you will design and deliver a significant portion of the analytical and system-execution components for RMS(one). Requirements for the job include: building new features and workflows as well as maintaining and extending existing functionalities; being involved in data integration and general systems design of the MEX framework; troubleshooting, supporting and fixing runtime processing errors on our distributed computational infrastructure; and following best-practices in test-driven development and componentized, decoupled design and implementation. You will also collaborate closely with internal teams including Cloud Operations, Quality Engineering, and Platform Engineering in supporting the delivery and deployment of the MEX platform.
We are looking for someone who can solve complex software engineering challenges related to processing large amounts of data at runtime within the context of a highly analytical, mathematical component stack. You will feel at home in this role if you are motivated, smart and enthusiastic about building and supporting analytical components on a high-throughput, low-latency, big-data processing system.
An ideal candidate for this position enjoys learning from new technologies and is enthusiastic about building new software solutions for a highly distributed, scalable platform. Excellent communication will be one of your strong traits. If you thrive on taking responsibility for delivering new solutions for a growing, dynamic product, we want to hear from you.
Required experience and skills:
- Superior programming skills in C#/.NET/C++ on a large code base. Substantial prior experience in another OO programming language can be a substitute as long as the candidate demonstrates strong knowledge of C#/.NET and/or C++.
- Strong experience in designing and implementing service-based systems, preferably dealing with highly-available, distributed computational analytics components running on a cluster-based “grid” or comparable parallel computation farm.
- Superior knowledge of performance measurement, bottleneck analysis, and resource usage monitoring. Candidate must show prior tangible examples of working through code/architectural design issues to resolution, utilizing skills in performance analysis of memory/CPU/disk IO/network IO.
- 5+ years of programming experience; proven track record of on-time delivery of your work.
- Excellent communication skills, proven ability to convey complex ideas to others in a concise and clear manner.
- Bachelors and 8 years or more experience or Masters degree and 6 or more years expereince or PhD and 3 or more years experience. Master’s degree or higher preferred.
Desirable experience and skills:
- Strong mathematical skills in algorithmic computations, statistics and probability.
- Solid experience in designing and implementing solutions to solve “big data” problems using proprietary solutions or public technologies such as Hadoop.
- Strong knowledge of a major RDBMS platform (e.g. Microsoft SQL Server, Oracle), data modeling and data access and shared patterns in distributed systems.
There’s a 5% chance that a hurricane will cause $60 billion of insured losses next year and a 1% chance that an earthquake will cause $50 billion of insured loss in the next 12 months. At RMS, we build simulation models that allow insurers and investors to understand their financial risks as a result of natural catastrophes, terrorism, pandemics, or changes in life expectancy.
We are one of the most exciting and technologically sophisticated firms you’ve ‘never’ heard of, unless you’re one of our clients in the (re)insurance, banking or hedge fund sector. As we lead an industry we helped pioneer we are able to offer stimulating careers to those who want to make a real impact on the world at large. At RMS we believe in thought leadership, personal growth and out-standing performance and support a culture of inclusiveness across all our offices.
As we approach our 25th anniversary, we are evolving our vision by delivering future solutions in the cloud, releasing in 2014 a cutting edge risk management platform ‘RMS(one)’ for the global risk market and we’re looking for talented professionals to join us.
To find out more visit: www.rms.com. ; Or follow us on Facebook or @rmsjobs on Twitter
RMS is proud to be an equal opportunity employer.