James Andrew Smith
Senior Software EngineerEmpathetic software craftsmen engineering scalable software solutions for 16 years, delivering impactful customer experiences and mentoring teams of engineers.
- Specializes in front-end architecture, performance, and developer experience; using React.js, TypeScript, and GraphQL
- Enjoys mentoring and contributing to open source; including contributions to Gatsby and Cypress
- Delivered 7 workshops and presentations at major conferences; focused on React.js, Redux, and GraphQL
- Uses system languages C# and Node.js to build scalable, distributed systems deployed with Kubernetes, docker, and native cloud solutions
Recent Professional Experience
Senior Software Engineer (64)
- MicrosoftRemoteDevelop distributed CMS , focusing on authoring tooling and content delivery, for support.microsoft.com, Office applications, and Windows. Influential technical leadership and mentorship across 5 teams.
TypeScript, React.js, Node.js, Next.js, Redux, GraphQL, Nx, C#, microservices, Azure, TDD, XP, git, Kanban
- Revamped the front-end architecture using React.js and Next.js, leading to improved maintainability and scalability for the application, supporting over 2 billion users with nearly 500 million requests per month without performance degradation
- Lead 3 engineering teams, aligning product vision, and executive leadership to build a federated GraphQL API , resulting in a 90% reduction in key user-facing performance metrics, facilitating smoother navigation for users and improving user satisfaction scores by 25%
- Instill a quality culture shift within the organization, introducing TDD and XP principles, E2E and component Cypress test suites; reducing support costs by 30%
- Reduce cost of creating and communicating project timelines to leadership by ~95% by creating an open source forecasting tool, leveraging AI and historical data without requiring estimates
- Reduce CI times by 80% by improving reliability with Yarn PnP, reducing complexity via Nx, and consolidating into a mono-repository
Lead Front-End Engineer
- Experience, LLCRemoteGuided all aspects of front-end development for 3 teams, communicated with stakeholders and executive leadership, ensured experiences that delight customers.
TypeScript, React.js, Node.js, Redux, TDD, Jest, Cypress, Docker, microservices, AWS, git, Scrum
- Innovated a comprehensive design language for UI components in the React.js ecosystem, ensuring consistent design across 3 applications and accelerate delivery of new features
- Guided and mentored 3 teams on React.js, Redux, TypeScript, Cypress and usage of TDD
- Established "Three Amigos" process driving improved alignment and visibility with product/leadership of delivered value; with 75% reduction of engineering time investment, increased team velocity by 20%
Senior Software Engineer
- VersionOne, CollabNetAtlanta, GA (Hybrid)Technical lead for over 3 high-profile features on flagship ALM product; including road mapping, time sheets and UI for domain-level filtering in an XP and TDD environment.
JavaScript, React.js, Redux, AngularJs, Backbone.JS, jQuery, C#, MVC.NET, Node.js, TDD, XP, gulp, git, Kanban
- Led modernization effort of entire front-end codebase replacing proprietary JavaScript module format with ES6 modules; enabled use of modern tooling and practices, adoption of React.js, significant reduction of technical debt and increased developer productivity
- Aligned engineering organization to adopt React.js for new major features, resulting in a streamlined development process adopted by 5 teams across 2 key products, enhancing productivity and consistency
- Streamlined processes between UX and Engineering through the creation of React.js based component library and design language documentation; used by 4 teams and tested via Cypress and Storybook
- Owned high-impact OSS JavaScript SDK used by third party integrations; driving many internal business processes of Fortune 500 companies
Senior Software Engineer
- MATRIX Professional ServicesAtlanta, GA (Hybrid)Focused on full-stack development using C#, JavaScript, React, and TDD for major clients.
C#, MVC.NET, Node.js, JavaScript, React.js, jQuery, KnockoutJS, TDD, Jasmine, Karma, MSTest, Scrum, grunt, git
- Prepared redesigned checkout process for a major e-commerce store; reducing steps to action by 50% and increasing sales by an undisclosed amount
- Reduced defects in new features by ~60% through testing mechanisms, including jasmine, mocha and karma with CI automation via gulp and grunt