We are seeking an experienced Senior Software Developer to join our dynamic team in a long-term contract position. The ideal candidate will be proficient in a range of programming languages and technologies and possess the ability to lead and contribute to complex software development projects. This role requires a hands-on approach to designing, developing, and maintaining software solutions that meet high-quality standards and business objectives.
Key Responsibilities:
- Design, develop, and maintain scalable and efficient software applications using TypeScript, JavaScript, Angular, React, and Node.js.
- Develop and integrate REST APIs and GraphQL services to support front-end applications and enhance user experience, and for collecting and consuming data in back-end applications.
- Utilize containerization technologies like Docker and Kubernetes to deploy, manage, and scale applications across various environments.
- Collaborate with cross-functional teams including project managers, team leads, and other developers to deliver high-quality software solutions.
- Perform code reviews, troubleshoot, and debug applications to ensure optimal performance and code quality.
- Maintain development environments using VS Code, ensuring efficient workflows and code management.
- Stay up-to-date with emerging technologies and industry trends, continuously improving development processes and methodologies.
- Lead and mentor junior developers, providing guidance and sharing best practices.
Must-Have Skills:
- Back-end – Majority of Job Responsibilities: Node.js and NPM (Package Manager for Node.js) ecosystem
- Experience with Node package used for SQL Server connectivity (mssql)
- Front-end: Recent experience with Angular / React / Typescript
- Strong Linux command line skills (or possibly Windows Subsystem for Linux 2 experience) to support deploying apps inside Docker containers on a Linux host
- Ability to work independently and get up to speed quickly to support and expand on existing solutions
- Adding new features and integrations to solutions along with overall maintenance
- Addressing vulnerabilities and updating vulnerable dependencies, including resolving major breaking changes that require significant code changes
- AWS experience (Note: They are almost exclusively AWS – very little / no Azure)
- Express web server
- Docker
- Kubernetes
- RxJS (Reactive Extensions for JavaScript)
- GraphQL
- Apollo server experience preferred
Beneficial Skills:
- Proficiency in TypeScript and JavaScript for both modern web application and back-end development.
- Extensive experience with Angular and React for building dynamic and responsive user interfaces.
- In-depth knowledge of REST APIs, GraphQL, and Node.js for backend services and server-side development.
- Strong experience with Docker and Kubernetes for containerization and orchestration.
- Proficiency with SQL Server and PostgreSQL for database design, engineering, and optimization.
- Proficiency with VS Code as a development environment.
- Experience with C# and Python for backend and scripting tasks.
- Familiarity with JIRA and Bitbucket for issue tracking and version control.
- Knowledge of Confluence for team collaboration and knowledge sharing.
- Experience with Markdown for documentation.
- Experience with Splunk dashboards
Qualifications:
- Bachelor’s degree or equivalent experience in Computer Science, Software Engineering, or a related field.
- 7+ years of experience in software development, with a strong focus on web technologies.
- Proven track record to delivering high-quality software solutions in a fast-paced environment.
- Excellent problem-solving skills and ability to think critically and creatively.
- Strong communication skills and ability to work effectively in a team-oriented environment