Software Engineer

Riverside Research Institute

$125K — $175K *
Aerospace & Defense
5 - 7 years of experience
Job Overview by Ladders

Qualifications

  • Must obtain and maintain a Secret Security Clearance.
  • 5 years of programming experience with a Bachelor's degree in Computer Science, or 3 years with a Master's degree or equivalent experience.
  • Familiarity with modern software technologies and architectures, including Java, JavaScript, and Spring.
  • Experience with database technologies like Postgres and MongoDB.
  • Knowledge of design principles for REST API endpoints.

Responsibilities

  • Participate in the software development life cycle, including architecture, design, and testing.
  • Focus on application architecture, client-side/server-side development, and software design.
  • Collaborate with the project manager and development team to enhance software quality.
  • Work directly with databases to collect information and perform statistical analysis.
  • Engage with stakeholders to define software roadmap and focus areas.
  • Provide technical support to users of the software.
  • Complete additional assigned duties.

Benefits

  • Collaboration in a cohesive software development team
  • Exposure to modern software development practices
  • Opportunity for personal growth and learning new technologies
  • Engagement with various stakeholders and users
  • Involvement in multiple parts of the software development life cycle
Full Job Description
Position Overview

Riverside Research is seeking a Software Engineer (Mid-level) with good experience to work in our Lexington, MA office. We are searching for a candidate that has worked in an environment with good software culture, promoting best practices and processes. We seek a motivated and collaborative employee who will be comfortable working within a cohesive software development team. This candidate will implement features and services in our software system, assist in the planning of designs, write code to fix bugs and expand functionality, and help to maintain a software system that includes multiple services, components, and clients, including a web application.

Responsibilities
  • Some level of participation in most parts of the software development life cycle, including providing input or review during feature conception and requirements generation as well as software architecture and design, implementation, build, deployment, testing, and support.
  • Areas of focus may include some targeted areas of application architecture and software design, user-interface and experience , client-side and server-side development involving Spring, web application development, testing frameworks, and understanding and integrating with devops tools.
  • Collaborate with project manager and other development team members to continue to support and develop a robust, high-quality software system that can be accessed on both desktop environments and web clients, with an eye for extensibility to leverage and display different types of data in the future.
  • Ability to work directly with databases and other data stores in order to collect information and potentially perform certain levels of statistical analysis.
  • Some interaction with stakeholders, customers, and users, or their capabilities and requirements documents, to understand operational strengths and weaknesses and help define roadmap and future focus areas for the software system.
  • On occasion, provide direct customer support and technical assistance to users of the software.
  • Other duties as assigned
Qualifications

Required Qualitifactions

  • Must obtain and maintain a Secret Security Clearance.
  • Knowledge of current best principles, practices, and procedures for design, development, implementation, deployment, and testing with respect to modern software applications and servers.
  • Five years of professional programming experience with a Bachelor's degree in Computer Science or three years with a Master’s Degree or equivalent work and professional experience that is documented and can be demonstrated.
  • Experience with modern software technologies, architectures, and frameworks that are used in enterprise client-server stacks or web application stacks. Examples include: Java, Kotlin, JavaScript, TypeScript, Spring, Hibernate, Angular, Node, and Python.
  • Exposure to database technologies related to modern software application stacks. Examples include Postgres, MySQL, MSSQL, and MongoDB.
  • Experience user interface and user experience design and implementation.
  • Knowledge of and exposure to designing, building, and implementing REST API endpoints according to well-defined best practices.
  • Experience using AI code assist tools as part of modern software development best practices.
  • Strong technical documentation skills.
  • Demonstrated troubleshooting skills.
  • Demonstrated ability to work effectively in a team environment.
  • Demonstrated desire to grow and learn new technologies.

Desired Qualifications

  • Active DoD Secret Security Clearance
  • Experience and knowledge in the areas of dependency injection, software services, and componentization of designs.
  • Strong experience in object-oriented design and implementation.
  • Strong experience in functional programming design and implementation.
  • Understanding of REST, web services, and web security.
  • Some full stack development and architecture experience, including, but not limited to, web services, client-server communication, database modeling, microservices, user facing interfaces, and the frameworks related to these items.
  • Exposure or some experience with Docker, Kubernetes and containerization and DevOps/deployment concepts and tools in general.
  • Exposure or some experience with Angular framework and related JavaScript client-side libraries.
  • Exposure or some experience with Java, Spring framework, Kotlin, and related client and server-side libraries.
  • Experience with different software development methodologies, including agile.
  • Experience with the tools that are used for managing software lifecycle processes such as JIRA, Confluence, and Bamboo.
  • Experience with source control systems, such as Git, and related tools such as BitBucket, Fisheye, and Crucible.
  • Some experience with technologies like Cassandra, Kafka, Minio, Elasticsearch, HBase, Hadoop, Lucene, Python.
  • Exposure or knowledge of machine learning algorithms and tools such as naïve-bayes, decision trees, neural networks, and TensorFlow.
  • Familiarity with natural language processing libraries and tools.
  • Exposure or knowledge working with multiple LLM providers, both local and remote, and the APIs associated with multiple provider backends.
  • Organizational skills to make progress on multiple elements and complete tasks quickly within the constraints of clients’ timelines and budgets.
  • Good data analysis skills.
  • Some experience or exposure in the areas user interface and user experience design and implementation.
  • Some experience or exposure in dealing directly with customers in a productive and iterative fashion.

Global Comp125,000 - 175,000 This represents the typical compensation range for this position based on experience, location and other factors.

Similar Jobs

More Jobs at Riverside Research Institute

More Aerospace & Defense Jobs

Find similar Software Engineer jobs: