The UI Software Engineer will help modernize our Online Billing Application and Group Management Experience. Along with writing effective code, the position will be responsible for designing, building, delivering, and maintaining a highly scalable set of products and applications. The incumbent will use industry best practices and work collaboratively with a cross-functional team of product managers, UX designers, architects, principal engineers, software engineers, test automation teams, and DevOps engineers.
Qualifications
- 2+ years of professional experience in web application development with a Bachelor's Degree in computer science or relevant fields.
- Experience designing and developing secure, consumer-facing responsive, accessible user experiences and interfaces for web applications.
- Intermediate knowledge of HTML5, CSS3, responsive web design, and accessibility standards (WCAG 2.0 AA).
- Intermediate knowledge of JavaScript programming.
- Experience building production applications with ReactJS, Redux, MobX, or other state management libraries.
- Experience with CSS preprocessors like Sass, Less, or Styled Components.
- Experience building responsive Single Page Web Applications.
- Experience with Node.js in production applications.
- Understanding of design principles for scalable applications.
- Knowledge of user-centered design, mobile-first methodology, progressive enhancement, accessibility, SEO, responsive design, and website performance optimization.
- Experience with browser developer tools like Chrome DevTools.
- Intermediate knowledge of Git/GitHub or other version control systems.
- Experience working with Scrum and Agile processes.
- Preferred experience with Azure and Azure DevOps.
- Experience writing unit tests using frameworks like Jest, Enzyme, Jasmine, etc.
- Ability to identify key issues, analyze details, and present understandable solutions to technical and non-technical audiences.
- Capability to create and maintain technical documentation for testing, deployment, and maintenance.
- Proven skills in data presentation and analysis.
- Strong problem-solving skills for designing, developing, and testing systems.
- Adherence to organizational processes, including Scrum and design documentation.
- Lifelong learner and process improver.
Responsibilities
- Drive and implement new, cutting-edge, business-critical projects requiring fast, slick, and extendable UI development using the latest tools and libraries.
- Design, develop, and maintain responsive, accessible web applications for desktop and mobile, focusing on scalability, security, and performance.
- Contribute to an engineering team that builds and supports innovative products addressing challenging business needs and operational issues.
- Participate in architectural design, system analysis, and programming, often requiring independent research.
- Develop high-quality, production-ready software using best practices in data structures, algorithms, design patterns, and frameworks.
- Write high-quality, scalable, secure, and performant code, owning the entire lifecycle from conception to deployment and support.
- Create and maintain comprehensive technical documentation.
- Test and ensure code quality following test-driven development and continuous delivery principles, utilizing automation frameworks.
- Engage in pair programming and code reviews.
- Collaborate with cross-functional teams to define, prioritize, and scope requirements.
- Monitor infrastructure and application performance, manage capacity, and handle alerts and metrics.
- Assess the impact of hardware and software upgrades.
- Assist in planning and executing engineering projects.
- Support and collaborate with other engineers during various development phases.
- Maintain knowledge and compliance with policies, becoming a technical expert within the team.
- Perform additional duties as assigned.