Research Software Engineer Job Description

Research Software Engineer Job Description

4.6
163 votes for Research Software Engineer
Research software engineer provides software technical leadership to development teams for user interfaces, databases, computations, algorithms, and communication systems software components.

Research Software Engineer Duties & Responsibilities

To write an effective research software engineer job description, begin by listing detailed duties, responsibilities and expectations. We have included research software engineer job description templates that you can modify and use.

Sample responsibilities for this position include:

Develop and program prototypes in Python or Java
Work closely with the Research Scientists to implement and optimize video algorithms
Assist the Video Engineering team in making decisions related to encoding recipes and new technologies
Investigate/develop tools for software development of safety critical vehicle control applications
Investigate/develop software development methods and process strategies to meet global standards for safety critical vehicle control applications including but not limited to ISO26262 and Autosar
Investigate the use of model-based design as a means to improve robustness and insure the correctness of safety critical designs
Study existing hand-coded legacy software development tools and processes and identify potential migration strategies
Investigate potential integrated hardware/software solutions to insure robustness of safety-critical functionality
Collaborate with cross-functional teams to define, design, and create innovative user experiences
Create public-facing documentation to support external and internal customers

Research Software Engineer Qualifications

Qualifications for a job description may include education, certification, and experience.

Education for Research Software Engineer

Typically a job would require a certain level of education.

Employers hiring for the research software engineer job most commonly would prefer for their future employee to have a relevant degree such as Bachelor's and Master's Degree in Software Engineering, Management, Computing, Software Development, Education, Communication, Human Relations, Interdisciplinary, Administration, Computer Science

Skills for Research Software Engineer

Desired skills for research software engineer include:

Programming languages
Current and future software development tools and techniques
Software Development tackling challenging problems
Machine learning
Python
Build systems
CSS
Distributed systems
Experience with operating system architecture
Full stack development from back end to interfaces

Desired experience for research software engineer includes:

Solid understanding of video compression and video streaming principles
Strong background in image and signal processing, both algorithm design and implementation (for example, image scaling, deinterlacing, frame rate conversion, artifact detection)
Proficient in C++ or Java and solid understanding of object-oriented programming
Mathematical background (probability & statistics) a strong plus
5+ years automotive experience in embedded automotive controls development and testing
Expert programming real-time embedded controls C/C++

Research Software Engineer Examples

1

Research Software Engineer Job Description

Job Description Example
Our company is hiring for a research software engineer. If you are looking for an exciting place to work, please take a look at the list of qualifications below.
Responsibilities for research software engineer
  • Support researchers in our team by applying your skills in software engineering best practices to assure architectural consistency, scalability, efficiency
  • Collaborate with faculty and researchers to develop open-source solutions for nonperturbative computations in quantum field theory
  • Explore applications of high-performance computing and GPUs to improve and scale current tools
  • Assist researchers with optimizing, parallelizing, distributing, and using shared software tools
  • Contribute to new technology strategies
  • Mentoring of new hires and Interns
  • Creation of software/hardware prototypes and proof of concepts
  • Analysis, management, construction and execution of business and technology focused pilot projects
  • Manage projects, ­accountable for deliverables, estimates, planning, follow up and tracking metrics
  • Effectively handles ambiguous tasks and assignments
Qualifications for research software engineer
  • Expert using Matlab, Simulink, Stateflow, Real Time Workshop Embedded Coder, and/or TargetLink
  • Hands-on embedded issue resolution experience using both hardware software debug techniques
  • PhD Computer Science, Electrical Engineering
  • 3+ years of relevant working experience (C/C++, Java, scripting languages )
  • Proficiency in C# or C/C++, and strong debugging skills
  • Software development experience on major operating systems, development of applications and shared libraries
2

Research Software Engineer Job Description

Job Description Example
Our company is growing rapidly and is looking for a research software engineer. We appreciate you taking the time to review the list of qualifications and to apply for the position. If you don’t fill all of the qualifications, you may still be considered depending on your level of experience.
Responsibilities for research software engineer
  • Author and maintain documentation by writing audience-appropriate materials to serve as technical and/or end-user references
  • Implement changes by adhering to the change management policies and procedures for any given project to communicate to all parties the nature, significance, and risk factors of the solution
  • Monitor changes and resolve complex problems requiring the highest level of technical expertise by responding as they occur, by reviewing all processing and output of the newly implemented solution, and by proactively ensuring the solution works successfully in order to satisfy the customer requirements and to provide a smooth transition to the new solution
  • Provide support by investigating and resolving complex issues to ensure prompt, effective service
  • Have worked on frontend development and have familiarity with backend services
  • Records and updates defect logs to ensure thorough and accurate documentation
  • Contributes to work sessions to gather relevant information and to ensure understanding of the problem domain
  • Performs assigned functions and tasks to meet project plan
  • Contributes to defining integration test specifications to conduct tests, record failures, and conduct fault diagnoses
  • Contributes to the creation of build processes to produce software and to prepare tools for delivery
Qualifications for research software engineer
  • 3+ years of experience with application and system architectural design
  • Experience in cross-platform development (Linux, Windows, OSX), Networking protocol development and debugging (TCP, UDP, Protocol Buffers, AMQP, tcpdump, wireshark)
  • Understanding and experience in modern mobile technologies such as Android, IOS
  • Bachelor of Science in Computer Science or other related field
  • 1+ Years of experience Swift, iOS SDK, XCode, and, XCTest
  • 1+ Years of experience with Objective-C/C++ using Cocoa Framework
3

Research Software Engineer Job Description

Job Description Example
Our company is growing rapidly and is searching for experienced candidates for the position of research software engineer. We appreciate you taking the time to review the list of qualifications and to apply for the position. If you don’t fill all of the qualifications, you may still be considered depending on your level of experience.
Responsibilities for research software engineer
  • Develop the processes that will be required for building interactive systems that are distributed across multiple networks
  • Work closely with EESE during the GTDS hand-off of developed processes, methods and tools
  • Staying up to date and informed about breakthrough artificial intelligence (AI) technologies with the potential to transform business, the workforce or consumer experience
  • Working closely with teammates and industry experts to design and implement prototypes that demonstrate the potential of the team’s ideas
  • Configure, program and troubleshoot various laboratory automation platforms
  • Identify process improvement opportunities, establish solutions and implement changes
  • Investigate and recommend new laboratory automation platforms and upgrades to existing tools, while assessing risk and impact to maintenance data or activities
  • Participate in project teams to help identify requirements for new functionalities and perform impact analysis
  • Monitor equipment, product and system performance to ensure operational quality, and report issues
  • Serve as the liaison with the vendors for a complete product conversion installation, upgrades or patches and support as required
Qualifications for research software engineer
  • Masters of Science in Computer Science or other related field
  • A natural curiosity and desire to understand and even contribute to the entire technology stack
  • Ability to work with multiple technologies. 
  • J2EE development - strong programming experience and skills 
  • 5 years of experience with enterprise quality software development 
  • Comfortable with software installation, configuration and system administration
4

Research Software Engineer Job Description

Job Description Example
Our innovative and growing company is searching for experienced candidates for the position of research software engineer. Please review the list of responsibilities and qualifications. While this is our ideal list, we will consider candidates that do not necessarily have all of the qualifications, but have sufficient experience and talent.
Responsibilities for research software engineer
  • Create long-term plans for maintenance, upgrades, and refactoring to keep software and systems secure, modern, and scalable
  • Define team coding standards
  • Provide on-demand data reporting as required by research staff
  • Create software development plans
  • Coordinate release planning for an orderly deployment of upgrades, enhancements, and fixes
  • Conduct code reviews and provide mentoring to monitor and improve team performance
  • Conduct routine privacy and security audits of MoodNetwork systems and applications
  • Responsible for leading a team of 1-2 developers plus a varying number of contractors and/or interns
  • Design of software for embedded systems within medical device
  • Familiarity with software development for UI
Qualifications for research software engineer
  • Experience with messaging technologies such as MQTT, RabbitMQ 
  • Big data technologies such as Spark, Hadoop, Cassandra, etc 
  • 2-5 years of work experience required in Internet-of-Things (IoT) development and big data
  • Experience in developing server side components using J2EE
  • Experience in databases (DB2, Oracle, MySQL), writing complex queries and SQL tuning
  • Experience in using Big Data frameworks like Hadoop and Spark is a plus
5

Research Software Engineer Job Description

Job Description Example
Our innovative and growing company is searching for experienced candidates for the position of research software engineer. We appreciate you taking the time to review the list of qualifications and to apply for the position. If you don’t fill all of the qualifications, you may still be considered depending on your level of experience.
Responsibilities for research software engineer
  • Collaborate with cross-functional teams to define, design, and create services and API’s that support innovative user experiences
  • Develop micro service prototypes quickly to validate interactions and prove product designs
  • Help optimize applications for usability and modularity
  • Create documentation to showcase work and support external and internal customers
  • Design and build cloud computing environments to support new vehicle and consumer experiences
  • Explore new and distributed computing platforms, supporting technologies, and potential applications
  • Build libraries and frameworks that support rapid prototyping
  • Create documentation to showcase research and support internal customers
  • Develops simple software solutions to streamline management and execution of clinical trials using technologies such as ASP.NET (C#), AngularJS and PL/SQL
  • Develops Software Requirements and Design Specifications
Qualifications for research software engineer
  • 3+ years of design & development experience
  • Experience in UI technologies like HTML5, JQuery and D3 is a major plus
  • Familiarity with Dept
  • Ability to produce bullet-proof code that is fault-tolerant, efficient, and maintainable
  • Strong project management experience, working on cross-functional projects
  • Demonstrated ability to mentor other engineers to maintain architectural vision and software quality

Related Job Descriptions

Resume Builder

Create a Resume in Minutes with Professional Resume Templates