Software Engineer

Software Development

United States - NY, New York

Requisition ID



Medidata: Power Smarter Treatments and Healthier People

Medidata is leading the digital transformation of life sciences, creating hope for millions of patients. Medidata helps generate the evidence and insights to help pharmaceutical, biotech, medical device and diagnostics companies, and academic researchers accelerate value, minimize risk, and optimize outcomes. More than one million registered users across 1,900+ customers and partners access the world's most trusted platform for clinical development, commercial, and real-world data. Medidata, a Dassault Systèmes company, is headquartered in New York City and has offices around the world to meet the needs of its customers. Discover more at and follow us @medidata.

At Medidata, we help life science companies bring innovative treatments and therapeutics to market.  Our software is used in over 60% of clinical trials. We are proud to have helped our customers deliver COVID-19 vaccines at record-breaking speeds.  Now, we’re bringing the same level of innovation and efficiency to other areas of life sciences.  We are building a world where novel life-saving therapies are developed faster and safer.  How about that for a mission?


Our team:  Our team is responsible for building applications that help clean and semantically enrich our data.  Our tools help customers standardize clinical trial data to get it ready for regulatory submission (i.e. FDA), perform advanced cross-study analytics, and deliver innovative data capabilities using data collected from hundreds of thousands of studies.

Who we’re looking for

We’re looking for experienced engineers who share our passion for solving real-world problems and someone who thrives on shipping frequently.  Someone who has experience designing and developing web applications and APIs and deploying them to production.  Someone who deeply understands design and architecture concepts and prides themselves on delivering clean, maintainable quality code.


Here is a list of tools and approaches we use.  We don’t ask you to be an expert in all of them, but we expect you to be productive in this environment.

  • This team primarily builds Web applications with ASP.NET Core and React, with sprinkles of Python. We’re always open to exploring alternatives.  Our technology stack across Medidata is very broad. 
  • You should have deep experience with developing web applications, APIs in ASP.NET Core, 
  • You should have deep experience in relational databases and know how to write optimal SQL. Writing SQL is an art and in many situations happens empirically.  So our developers are also digging deep into query plans, optimizing joins, and improving aggregate clause performance.
  • We deploy our applications in AWS.  Because we practice DevOps, we expect you to have a good understanding of Infrastructure as Code (CloudFormation/Terraform) and container-based environments.
  • We strongly believe in full test automation, which helps us deliver quality features faster.  Test automation helps us deliver better software.  Whether you write your tests first, or not, is a personal preference, but our developers are responsible for quality.  When our engineers deliver software, it includes unit and integration tests.  We don’t throw quality over the wall to QA.
  • We embrace OO and functional programming but are not pedantic about it. We favor immutable state and prefer composable functional abstractions over large class hierarchies. You should be experienced in both OO and functional programming methodologies and be able to leverage the advantages of each method.
  • We love clean and maintainable code to help us deliver quality software that’s easy to maintain.  We hope you have a similar passion for great code and abstractions and can show us some of the work you have done!
  • We embrace agile and iterative development.  Notice the little ‘a’ here.  Regardless of the framework, we focus on first principles of being agile.  We do our best working in smaller batches to iterate to a great solution.
  • Our team members own their code.  They effectively work together to solve complex problems.  They care more about the team effort than individual accomplishments.  We’re looking for someone with the same attitude.
  • We value clear and concise communication.  We believe it’s key in any environment but is non-negotiable in a remote setting.  Given that a lot of our work is asynchronous, we put a high premium on long-form writing.  You should be able to communicate your ideas clearly in written form.



  • Be excited about staying current with new technologies and engineering concepts.
  • Bachelor's degree in computer science (or related field)
  • 4-5 years of relevant experience