FICO is a leading global analytics software company, helping businesses in 100+ countries make better decisions. They are seeking a skilled Frontend Engineer to build and maintain scalable, high-quality Angular components, contributing to user interface enhancements and collaborating closely with various teams to align components with business goals.
Responsibilities:
- Build and maintain robust, scalable Angular components aligned with the FICO Design System
- Contribute to user experience improvements for our Platform users, by helping to build out our modular, micro-frontend based-interfaces
- Implement pages and features for FICO Platform using Angular, HTML, CSS, and IRIS Angular components
- Support teams implementing micro-frontends with IRIS, sharing best practices and ensuring quality
- Collaborate closely with Product Design, Architecture, Engineering, Product Management, and Marketing teams to align components with business goals and design standards
- Participate in IRIS office hours to provide hands-on support to developers and customers
- Contribute to team knowledge sharing through code reviews and technical discussions
- Opportunity to build tools and frameworks to enhance developer experience, including Nx generators and executors
- Opportunity to explore connecting micro-frontends to the backend following the backend for frontend pattern and writing BFFs in Node.js
- Contribute to the performance and organization of the IRIS component library and frontend repository
- Stay informed on emerging frontend technologies, continuously enhancing your skills with a focus on developer efficiency, performance, and scalability
- Contribute to FICO's engineering growth-oriented culture through technical discussions, conducting code reviews, and advocating for clean, maintainable code
Requirements:
- Bachelor's/Master's degree in Computer Science, Software Engineering, Information Technology, or a related field, or equivalent professional experience
- Angular proficiency: advanced knowledge of Angular, TypeScript, HTML, CSS, and modern web technologies, including state management (e.g. NgRx or Redux) and asynchronous programming
- Design System experience: ability to build and extend component libraries for design systems in complex enterprise environments
- Collaboration and communication: strong communication skills, with the ability to work effectively across teams and present technical concepts clearly
- Tooling proficiency: experience with Git and Git-based workflows, Nx, Node.js, Bootstrap, and modern build tools
- Developer enablement: a focus on empowering engineers with patterns and best practices for building micro-frontends and scalable UIs
- Architectural understanding: experience contributing to the technical organization of large repositories, including organizational structure, performance optimizations, and version upgrades
- Performance optimization: understanding of performance optimization techniques for web applications, including lazy loading, tree shaking, and efficient DOM manipulation
- Continuous learning: a commitment to staying current with trends in frontend development, with a passion for learning and experimentation
- Experience working with product designers and architects
- Familiarity with GitHub Actions, Jest, and Cypress or Playwright
- Advanced CSS: solid understanding of modern CSS, including Flexbox, Grid, CSS animations, and pre-processors like SCSS
- Nx monorepos: experience working with frontend monorepos, specifically Nx, and understanding of trunk-based development
- Knowledge of accessibility standards and practices (e.g. WCAG)
- Knowledge of backend technologies (e.g. Node.js, RESTful APIs, GraphQL, gRPC) and how they integrate with frontend applications