Senior Software Engineer I

RELXRaleigh, NC
2dRemote

About The Position

Write and review system specifications by understanding the needs of the business for whom the system is being designed. Write and review portions of detailed specifications for the development of systems components of simple complexity. Complete bug fixes and under the guidance of senior-level engineers, successfully implementing development processes, coding best practices, and code reviews. Operate in various developments environments (Agile, Waterfall, etc.) while collaborating with key stakeholders. Resolve basic technical issues as necessary and keep abreast of new technology development. Interface with other technical personnel or team members to finalize requirements. Work closely with other development team members to understand complex product requirements and translate them into software designs. Train entry-level software engineers as directed by department management, ensuring they are knowledgeable in critical aspects of their roles. Design and work with complex data models. Mentor less-senior software developers on development methodologies and optimization techniques. Perform other duties as needed.

Requirements

  • Master’s degree (or foreign equivalent) in Computer Science, Computer Engineering, Information Technology, or a related field required.
  • 3 years of experience in job offered or related occupations required.
  • 3 years of experience: utilizing Java/J2EE, RESTful APIs, Json, and XML databases including PostgreSQL and DynamoDB
  • using HTML, JSP, CSS, JavaScript, AJAX, jQuery, and React.js to build internal dashboards, web-based utilities and user interfaces
  • using source code management tools including Git to ensure software system integrity
  • using design patterns such as MVC, Factory, Circuit Breaker, and Singleton to structure scalable and maintainable tooling and systems
  • utilizing monitoring tools including CloudWatch and Splunk, as well as log-based root cause analysis tools such as CloudWatch Logs Insights, to manage cloud systems, monitor production applications, and assess system health
  • utilizing test-driven development approach to develop and integrate JUnit testing using Mockito frameworks, JaCoCo, and Sonarqube code coverage reporting tool
  • using Jenkins and CI/CD practices to automate the build, test, and deployment of infrastructure components, internal tools and cloud-native applications.

Responsibilities

  • Write and review system specifications by understanding the needs of the business for whom the system is being designed.
  • Write and review portions of detailed specifications for the development of systems components of simple complexity.
  • Complete bug fixes and under the guidance of senior-level engineers, successfully implementing development processes, coding best practices, and code reviews.
  • Operate in various developments environments (Agile, Waterfall, etc.) while collaborating with key stakeholders.
  • Resolve basic technical issues as necessary and keep abreast of new technology development.
  • Interface with other technical personnel or team members to finalize requirements.
  • Work closely with other development team members to understand complex product requirements and translate them into software designs.
  • Train entry-level software engineers as directed by department management, ensuring they are knowledgeable in critical aspects of their roles.
  • Design and work with complex data models.
  • Mentor less-senior software developers on development methodologies and optimization techniques.
  • Perform other duties as needed.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service