Senior Software Engineer (Full Stack)
The National Research Center for College & University Admissions
Summary
Join Encoura's team as a Senior Full Stack Software Engineer and contribute to building next-generation systems and products that enhance the student experience. You will work in a small, distributed team, collaborating with engineering and product leadership using agile development methodologies. This role involves building web and mobile applications, working with GraphQL microservices, and contributing to the overall system architecture. Continuous improvement and collaboration are key aspects of this position. You will be involved in all stages of the software development lifecycle (SDLC), from planning and development to production troubleshooting and release. Encoura offers a comprehensive benefits package and a mission-driven culture.
Requirements
- Hold a BS in Computer Science, Computer Information Systems, or equivalent work experience
- Have 2+ year's experience building software applications understanding the full scope of the app including the front and back-end topology
- Have 2+ year's experience working with GraphQL (Apollo), NodeJS and preferably using a framework such as NestJS
- Have experience building web applications with React, Material UI, NextJS, and Typescript
- Have 2+ year's experience with Python, and are familiar with maintaining and updating code written by others
- Be advanced with Docker and setting up local dev environments
- Have a presence on Github with your own portfolio of projects to share and demonstrate
- Have worked with a technology stack similar to ours: AWS, Docker, Kubernetes, PostgreSQL, MS SQL Server, Redis, MongoDB, Typescript, ReactJS, NodeJS, Python,GitHub, JIRA and Confluence
- Be used to working in an iterative-based development environment using Agile/Scrum/Sprints
- Always be thinking, βwhat happens if this fails?β
- Be opinionated about software architecture
- Be an excellent, collaborative team player with the communication skills to match
- Be passionate about getting the job done well even under time pressure and thrive in a demanding environment
- Demonstrate proactivity in capitalizing on opportunities and resolving issues
- Be intellectually curious β prepared to challenge and be challenged
- Constantly strive to learn new technologies and look for ways to stay up to date in this rapidly changing industry
Responsibilities
- Propel the team through agile development of web apps, mobile apps, libraries, and frameworks, connecting with GraphQL microservices
- Be incredibly involved in the overall architecture of the system you are working on while learning our existing technical stack
- Collaborate within your team while attending grooming sessions and mentoring others as needed to move the team forward
- Promote a work environment that is highly collaborative and team centric
- Enhance, refactor, and continuously improve the codebase
- Keep management informed of project progress and problems, particularly as to needed changes in schedule, resources, or product scope
- Communicate effectively with technical and non-technical people
Preferred Qualifications
- A relevant Masterβs degree is a plus
- Past Windows.NET and Microsoft stack experience is a plus
Benefits
- Comprehensive health and benefits package
- 401k company match that vests immediately upon participation
- Paid holidays and a generous PTO policy
- Paid parental leave
- Collaborative and energetic work environment with other motivated, career-driven professionals