Remote Work Allowed
The Software Engineer will be a “hands-on” development role - designing solutions, building new products, enhancing existing systems all to deliver value to our customers. This role will work directly with our business partners, QA, and Dev-Ops to deliver robust solutions. This role is expected to contribute to all technical decisions, software designs and future software direction.
Responsible for but not limited to design, code development, implementation, and support of technical solutions for various customer facing online platforms. Responsibilities include working with the business to define future direction and requirements; contributing to the development, supporting, optimizing, and maintaining various applications; researching and evaluating technology solutions; and working with a distributed team on many initiatives.
This position requires strong problem solving skills, the ability to work in a diverse, dynamic, and fast paced environment, the ability to meet aggressive deadlines, the flexibility to multi-task, the aptitude to work well with the IT team, the capability to work efficiently with minimal guidance, the initiative to improve upon best practices, excellent verbal and written communication skills and the skills to create documentation to comply with department requirements.
ESSENTIAL DUTIES AND RESPONSIBILITIES
- Responsible for design, code, configuration, QA and implementation of high-quality software solutions that are delivered on time and within budget.
- Maintains the best practices needed to ensure on time, quality software solution deliverables.
- Work with a distributed engineering team to foster a smooth development process among onsite and offshore team members.
- Develop and review project estimates and assumptions during planning and at key project milestones. Validate the development approach and assumptions that underlie the project plans and work plans.
- Participate in design, code, and QA walkthroughs and reviews.
- Stay abreast of the ever-changing technology industry to make sure solutions developed are following “best practices” and will meet the needs of the business going forward. Research and evaluate emerging technology solutions.
- Communicate at the appropriate level within and outside of IT the technical direction and proposed solutions for various projects and initiatives.
- Provide complete documentation for all IT initiatives.
- Preferred: Bachelor’s degree or higher in a technically oriented field - preferable Computer Science.
- Required: Equivalent formal training and at least 6+ years of relevant experience.
- 5+ years of professional software development experience. Prior experience with the .NET framework such as ASP.NET and/or C# is a plus.
- 3+ years of professional Frontend development experience developing web applications for use on platforms and systems.
- 3+ years of professional experience in at least five but preferably more, of any of the below technologies:
- React, Angular or Vue.js
- CSS Frameworks - Bootstrap, Zurb etc.
- CSS methodologies (OOCSS/BEM/SMACSS etc.)
- Unit testing Frameworks (Jest/Puppeteer/Mocha/Jasmine/Karma etc.)
- Understanding of Accessibility.
- Understanding of SEO principles.
- Experience with graphical design applications like InVision or Adobe Illustrator.
- Professional experience working with Web Content Management/Publishing systems using one of the application development platforms like SharePoint, Kentico or Sitecore.
- Relevant experience with Web Services such as WCF, REST, Web API, GraphQL or SOAP as well as SOA is strongly desired.
- Experience with Object Oriented Principles (OOP) and design patterns is required.
Other Knowledge, Skills, abilities and Certificates
- Prior professional experience in MS SQL Server is a plus.
- Experience with MS Visual Studio/Visual Studio Code.
- Experience with GIT/TFS, Jenkins, and Selenium would be a plus.
- Experience with cloud technologies is preferred.
- Experience being part of a distributed SCRUM team would be a plus.
- Ability to communicate effectively with both technical and non-technical audiences.