Senior API Developer

Crate & BarrelNorthbrook, IL
4d

About The Position

We are seeking an experienced and proactive Senior Software Engineer to take a significant role in designing, developing, and delivering robust and scalable software solutions. You will tackle complex technical challenges and contribute to the technical direction of our products. Your expertise will be crucial in driving innovation and ensuring the quality and performance of our software. A day in the life as a Senior Engineer... Lead the design and development of complex software features and systems, ensuring they meet functional and non-functional requirements, within an iterative development process Actively participate in and champion team ceremonies contributing to the successful delivery of sprint goals and continuous process improvement Work closely with product managers and team members to deeply understand user stories, as well as author technical stories that support the delivery of valuable solutions, leveraging your understanding of systems, tools, and applications in your product Take ownership of significant technical components from design through to deployment and maintenance Engage in continuous collaboration with product managers, architects, and stakeholders to define and refine technical solutions and roadmaps based on ongoing feedback and evolving priorities within the agile framework Adhere to and promote agile software development best practices, design patterns, and coding standards within the team Perform thorough code reviews, ensuring high standards of code quality, maintainability, and performance Identify and resolve complex technical issues and bugs, providing effective and scalable solutions Contribute to architectural discussions and decisions, influencing the technical direction of projects Drive the creation and maintenance of high-quality documentation for developed features and solutions, promoting best practices for knowledge sharing and contributing to a well-maintained codebase and knowledge base Drive personal and team growth by actively tracking industry trends and new technologies, and proactively engaging in learning activities to elevate technical expertise Assist in improving CI/CD pipelines and DevOps practices What you'll bring to the table... Strong expertise in software design and architectural patterns Deep understanding of agile software development methodologies and the full software development lifecycle Excellent problem-solving, analytical, and critical-thinking skills Strong communication, collaboration, and leadership skills, with the ability to effectively interact with cross-functional team members Proven ability to mentor and guide other engineers in technical skills Proficiency in multiple programming languages and technologies relevant to our stack Experience with designing and developing scalable, high-performance, and reliable software solutions in an iterative way In-depth knowledge of software testing strategies and automation Familiarity with cloud platforms (e.g., AWS, Azure, GCP) and microservices architecture Understanding of database design, performance tuning, and security best practices We'd love to hear from you if you have... Bachelor's degree in Computer Science, Software Engineering, or a related field (or equivalent practical experience) 5+ years of professional software development experience, with a demonstrated progression of responsibilities Proven experience in designing and delivering complex software systems, preferably in an agile environment Experience leading technical aspects of projects Strong proficiency in relevant programming languages and framework

Requirements

  • Strong expertise in software design and architectural patterns
  • Deep understanding of agile software development methodologies and the full software development lifecycle
  • Excellent problem-solving, analytical, and critical-thinking skills
  • Strong communication, collaboration, and leadership skills, with the ability to effectively interact with cross-functional team members
  • Proven ability to mentor and guide other engineers in technical skills
  • Proficiency in multiple programming languages and technologies relevant to our stack
  • Experience with designing and developing scalable, high-performance, and reliable software solutions in an iterative way
  • In-depth knowledge of software testing strategies and automation
  • Familiarity with cloud platforms (e.g., AWS, Azure, GCP) and microservices architecture
  • Understanding of database design, performance tuning, and security best practices
  • Bachelor's degree in Computer Science, Software Engineering, or a related field (or equivalent practical experience)
  • 5+ years of professional software development experience, with a demonstrated progression of responsibilities
  • Proven experience in designing and delivering complex software systems, preferably in an agile environment
  • Experience leading technical aspects of projects
  • Strong proficiency in relevant programming languages and framework

Responsibilities

  • Lead the design and development of complex software features and systems, ensuring they meet functional and non-functional requirements, within an iterative development process
  • Actively participate in and champion team ceremonies contributing to the successful delivery of sprint goals and continuous process improvement
  • Work closely with product managers and team members to deeply understand user stories, as well as author technical stories that support the delivery of valuable solutions, leveraging your understanding of systems, tools, and applications in your product
  • Take ownership of significant technical components from design through to deployment and maintenance
  • Engage in continuous collaboration with product managers, architects, and stakeholders to define and refine technical solutions and roadmaps based on ongoing feedback and evolving priorities within the agile framework
  • Adhere to and promote agile software development best practices, design patterns, and coding standards within the team
  • Perform thorough code reviews, ensuring high standards of code quality, maintainability, and performance
  • Identify and resolve complex technical issues and bugs, providing effective and scalable solutions
  • Contribute to architectural discussions and decisions, influencing the technical direction of projects
  • Drive the creation and maintenance of high-quality documentation for developed features and solutions, promoting best practices for knowledge sharing and contributing to a well-maintained codebase and knowledge base
  • Drive personal and team growth by actively tracking industry trends and new technologies, and proactively engaging in learning activities to elevate technical expertise
  • Assist in improving CI/CD pipelines and DevOps practices
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service