Saturday, July 23, 2016

Bayesian Trained Mathematician and Modeler

Bayesian Trained Mathematician and Modeler 
NORTHROP GRUMMAN,   Monterey, CA

Northrop Grumman seeks an applied mathematician/physicist/statistician with reasonable SW development skills in modern languages. Would expect fluency in two of the three languages(C/C++/Java) and 1 or more of the following (Lisp/Scheme, Python, Pearl). Must have demonstr able knowledge of vectorised programming skills in Matlab for rapid prototyping with additional toolboxes such as signal and image processing, machine learning, statistics, and wavelets. Experience with Simulink a plus but not required. Candidate must demonstrate a clear understanding of probability theory. Exposure to Bayesian Statistics and associated applications should have been acquired through classroom work, undergraduate and/or graduate work in machine learning and information theory applications. Candidate should have exposure to a variety of optimization and algorithms aimed at state estimation through various methods including analytic and numerical approaches such as particle filtering and importance sampling exposure, classification algorithms through schemes derived from Posterior probability computations directly, decision trees, graphical modeling methods including DAGs and cycles, various kernel machine and neural network methods with understanding of regularization methods and methods working in both L1 and L2 norms. Exposure to the R programming language is expected but expert level familiarity not required. Candidate would benefit from exposure to numerical packages for inference such as BUGS and Stan and ultimately understand the value of MCMC methods and Gibbs Sampling. Successful candidates will be supporting a Department of Defense laboratory in a cross-disciplinary effort to use behavioral and predictive analytics to create innovative ways with which to detect insider threats and other anomalous behaviors, e.g. active shooters, and espionage.

Qualifications

Basic Qualifications:


Required: PhD with 4+ years' experience or B.S. with 15 years and M.S. within any combination of above plus 8 years' experience required. Resume should include all collegiate and professional education completed, former employment, recognition, awards, and/or patents along with conference and journal publications. Eligibility to obtain and maintain a DoD security clearance is required. US citizens only.

Preferred Qualifications:


Current DoD security clearance. Northrop Grumman is committed to hiring and retaining a diverse workforce. We are proud to be an Equal Opportunity/Affirmative Action Employer, making decisions without regard to race, color, religion, creed, sex, sexual orientation, gender identity, marital status, national origin, age, veteran status, disability, or any other protected class. For our complete EEO/AA and Pay Transparency statement, please visit www.northropgrumman.com/EEO. U.S. Citizenship is required for most positions.

Protocol Buffers

Protocol Buffers

C++ - C# - Go - Java - Python 

Protocol Buffers is a method of serializing structured data. It is useful in developing programs to communicate with each other over a wire or for storing data. The method involves an interface description language that describes the structure of some data and a program that generates source code from that description for generating or parsing a stream of bytes that represents the structured data.

Google developed Protocol Buffers for use internally and has provided a code generator for multiple languages under an open source license.
 

Protocol buffers are a flexible, efficient, automated mechanism for serializing structured data – think XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages. You can even update your data structure without breaking deployed programs that are compiled against the "old" format.

You specify how you want the information you're serializing to be structured by defining protocol buffer message types in .proto files. Each protocol buffer message is a small logical record of information, containing a series of name-value pairs. Here's a very basic example of a .proto file that defines a message containing information about a person: 

message Person {
  required string name = 1;
  required int32 id = 2;
  optional string email = 3;

  enum PhoneType {
    MOBILE = 0;
    HOME = 1;
    WORK = 2;
  }

  message PhoneNumber {
    required string number = 1;
    optional PhoneType type = 2 [default = HOME];
  }

  repeated PhoneNumber phone = 4;
}


Click here for Language Guide!






3D and CG Software