Proof of authorization to work in the United States
Bachelor’s or Master’s degree in Computer Science, Software Engineering, or a related field
Must be able to obtain and maintain any certification or license, as required by law or policy
10+ years of relevant work experience
5+ years of experience in software development, with a focus on scalable applications and system design
Extensive knowledge of software design principles and development methodologies
Proficiency in React, Node.js, JavaScript, HTML/CSS, and Bash
Demonstrated experience working closely with UI/UX designers to ensure collaborative refinement and implementation of designs to meet specifications, including cross-browser compatibility
Expertise in Microservices architecture, RESTful APIs, GraphQL, and JSON
Deep understanding of relational and NoSQL databases, including database design and data modeling with SQL and MongoDB/Redis
Strong analytical skills for researching technical issues and providing clear, actionable resolutions
Extensive experience with Agile and Scrum development processes, with a strong understanding of iterative development
Excellent written and verbal communication skills, with the ability to effectively convey complex technical concepts to a variety of audiences
Working knowledge of c (incomplete in description)
Responsibilities
Define and drive the architectural vision and design principles for our software systems, ensuring they are scalable, maintainable, and aligned with business goals
Evaluate and select appropriate technologies and frameworks that support the team’s objectives and enhance overall system performance
Lead the design, development, and implementation of high-quality, full-stack features using Node.js, React, JavaScript/TypeScript, Java ensuring adherence to design principles and coding standards
Set and enforce best practices for software development, including code quality, testing, and documentation
Mentor and guide engineering teams, fostering a culture of continuous learning and improvement
Conduct technical training sessions and workshops to elevate the skill levels of team members
Collaborate with cross-functional teams (design, product, QA) to gather requirements, design solutions, and ensure timely delivery of software
Act as a key technical liaison between engineering and other departments to align project goals with technical capabilities
Take ownership of complex technical projects, ensuring they are executed effectively and delivered on time
Lead architectural discussions and design reviews, facilitating consensus among stakeholders
Stay current with emerging technologies, design patterns, and industry trends, and evaluate their applicability to the organization
Drive initiatives for process improvements within the engineering team to enhance productivity, collaboration, and code quality
Perform job duties in a safe manner
Attend work as scheduled on a consistent and regular basis