As a Senior Front End Engineer on the Communication Apps team, you will be responsible for building the next generation product experiences in one of the fastest growing areas at Twilio-SendGrid. You will utilize technologies like React, Redux, TypeScript, RxJS, and other modern libraries to create an intuitive product that allows our customer to upload, view, and manage millions of contacts. You will be responsible for building the user interface that allows our customers to create dynamic segments of their customer base in order to serve them with relevant content You will work on a small, versatile and passionate team, tackling new problems as we continue to push our technology forward. You will design, test, deploy and maintain software solutions that solve customers’ problems at-scale. You will have the opportunity to shape architectural solutions working the the latest AWS managed services and Cloud solutions.
Our Redwood City office is home to our CEO, CPO and a rapidly growing team focused on product innovation and architectures at scale. We are looking for a candidate with solid experience in distributed UX/UI systems.
What You’ll Do
- Live by and champion our cultural values of Happy, Hungry, Honest, and Humble
- Work in a creative and highly collaborative environment with Product, UI/UX teams to build the next generation of SendGrid products
Utilize cutting-edge web application architecture through the use of ReactJS with Redux, TypeScript, RxJS, Sass, npm, Github, Docker, AWS
- Create highly functional yet polished user interfaces with responsive design elements
- Develop and maintain secure, high performance web applications, often from scratch, that can fit into the SendGrid architecture
- Architect solid Front End solutions that integrate with multiple APIs and backend systems
- Implement scalable solutions utilizing caching, pagination, loading data on demand, and other techniques to manage massive, yet accessible, data sets
- Define best practices for Front End engineering, including participating in iterative design cycles and code reviews; Lead SendGrid Engineering processes
- Evaluate and analyze new technology and software for feasibility, impact, and viability
- Lead team initiatives and implementations from conception to completion, and be the point of contact for larger systems and components
- Work with other teams to troubleshoot and determine resolution for complex issues
- Recommend and champion improvements to our software and product development process
- Have a high impact on your team and on other Engineering teams
- Represent Sendgrid at community events
- Provide technical coaching and mentorship
- Build relationships across all functional domains within the department
- Be responsible for documentation of projects you work on
- Discern and identify hidden requirements during design and implementation
- We're an agile, fast growing company and this job description isn't meant to be a complete list of your qualifications or all of the things you'll do
- Bachelors Degree in computer science or computer engineering, related field or equivalent practical experience
- Typically, 3-5 years of software development experiences with a focus on user interfaces
- Expert knowledge and experience with ReactJS and Redux
- Strong sense of aesthetics and user experience
- Working knowledge of AJAX and DOM Manipulation
- Working knowledge of single page applications
- Solid understanding of web technologies such as REST, HTTP, JSON and how they play a part in application design
- Familiarity with browser compatibility issues and comfortable in debugging browser problems
- Passion for building large web applications at scale
- Experience with Unit and Integration Testing
- Ability to learn and adapt in a fast paced environment
- Proficient in multiple functional domains (frontend, backend, operations, etc.)
- Ability to design complex components and large scale systems
- Ability to translate architecture vision into concrete system designs
- Aligns actions and personal development with longer-term department goals, and can help define a vision of what may be possible
- Able to lead design meetings and Agile ceremonies
- Emotionally Intelligent - Recognize their own, and other people's emotions, to discriminate between different feelings and label them appropriately, and to use this to guide thinking and behavior
- Decisive - Uses a framework or process by which to make decisions. At times, will need to make decisions quickly and often with incomplete data.
- Persuasive - Have a formal process and framework by which to make qualitative and quantitative points, not just using emotional appeals
- Accountable - Willing to own the outcomes resulting from your own choices, behaviors, and actions. Take ownership of situations that you’re involved in.
- Self Motivated - Drive to achieve something out of your own enthusiasm or interest, without needing pressure from others
- Focused - Achieve what you set out to do before launching new initiatives. Complete company-linked goals and tasks, not simply to be busy and active.
- Collaborative - A keen ability to support cross-functional projects and decisions. Gains energy from working within a team and cross-functionally to achieve the company's goals.
- Experience with Cypress integration testing (or similar)
- Backbone (Ampersand), Angular, or Ember a plus
- Jest unit testing framework