AVID Technical Resources is partnering with our client to find a Senior Full Stack Software Engineer.
The Senior Software Engineer will plan and conduct comprehensive applications/web development for complex projects; typically work as part of a team to implement complex business solutions. Perform expert coding: design, develop code at an expert level, and manage development projects, teams, programs. May manage multiple projects simultaneously.
Essential Duties And Responsibilities:
- The Senior Full Stack Software Engineer will help build cutting edge research platforms.
- Maintain and enhance an open-source research API known as the PIC-SURE API and the integration of this API with other applications in our research infrastructure like JupyterHub, etc.
- Clarifying requirements, participating in architectural discussions, proposing and implementing solutions, and reporting on their progress to the team.
- Developing applications on our team involves exposure to the following: Application communication via JaxRS Web-Based APIs AWS Cloud Environment with DevOps tools like Docker, Jenkins, Terraform. Highly collaborative scientific informatics projects. Big Data problems in the biomedical and genomic space Interfacing with various data storage and indexing solutions like MySQL, Oracle, SQL Server, and others
- Develop and maintain new and pre-existing features of and integrate applications with our existing APIs as well as third-party APIs Work with research scientists both internally and externally to clarify software requirements.
- Propose solutions to these requirements, weighing the costs and benefits with our team as well as a broader group of stakeholders involved in the open-source community Implement solutions and update the team on the status of work.
- Create documentation, examples, and client libraries related to requirements and the project in general.
- Collaborate with team members in architectural discussions and contribute to general improvements across all team projects as directed. Participate in and contribute to sprint ceremonies.
Typical Core Duties
- Participate fully in software development life cycle
- Research, design, and implement technical solutions to deliver business requirements
- Identify opportunities to improve and simplify applications portfolio and implement related enhancements
- Contribute to the creation and maturing of software development best practices and new technologies
- Draw on the relationship and technical skills to act as technical liaison to internal and external clients and to mentor junior staff
- Abide by and follow the policies, and Code of Conduct
- Minimum of five years' post-secondary education and/or relevant work experience
Additional Qualifications and Skills
- Knowledge of information technology applications, processes, software, and equipment
- Highly specialized knowledge of a specific technology
- Demonstrated team performance skills, service mindset approach, and the ability to act as a trusted advisor
- Minimum Bachelor’s Degree in Computer Science or related field and 3 years of relevant work experience in a Software Engineering role or 7 years relevant work experience in a Software Engineering role
- Proficiency with relational databases systems leveraging JPA, Java, and web-based applications.
- 3+ years of experience with developing and consuming JAX-RS or JAX-WS APIs.
- Self-motivated and highly detail-oriented.
- Strong technical/systems design and development skills.
- Strong problem solving, testing, and debugging skills.
- Solid understanding of research data system implementation best practices and appropriate use of design patterns. Excellent verbal and written communication skills.
- A solution-focused attitude and ability to apply their skills to multiple projects at a time.