The Software Engineer III will play a critical role in designing, developing, and maintaining high-quality software solutions for the organization. This role will work closely with cross-functional teams, including product managers, designers, the finance team and other engineers, to deliver innovative and scalable software products that meet the needs of our customers and stakeholders. Expertise and leadership will be vital in guiding the team and ensuring best practices in software development.
Essential Duties and Responsibilities:
The essential functions include, but are not limited to the following:
o Design, code, test, and debug software applications in accordance with established coding standards and best practices. Develop primarily back-end components and APIs, ensuring optimal performance, scalability, and security. Be able to stretch into
front-end development when required.
o Collaborate with product managers, designers, the finance team and other stakeholders to translate business requirements into technical specifications and architectural designs. Provide input on feasibility and technical approaches for implementing new features and improvements.
o Participate in code reviews to maintain code quality, ensure consistency, and share knowledge among team members. Offer constructive feedback and suggestions to enhance codebase integrity.
o Identify and troubleshoot software defects and issues, employing analytical thinking and problem-solving skills to develop efficient and effective solutions.
o Create and maintain clear and comprehensive technical documentation, including system architecture, design documents, and user guides. Communicate technical concepts to both technical and non-technical team members.
o Work closely with cross-functional teams to ensure seamless integration of software components and successful product releases.
o Stay up-to-date with industry trends, emerging technologies, and best practices in software development. Propose and implement process improvements to enhance development efficiency and product quality.
o Develop and execute unit tests, integration tests, and performance tests to validate software functionality and reliability. Implement automated testing frameworks to streamline the testing process.
o Utilize version control systems to manage and track changes to source code. Collaborate effectively within a distributed version control environment.
Minimum Education & Experience Qualifications:
o Bachelor's degree in software engineering, computer science or related field
o 3-5+ years of professional software development experience
o Proven experience in software development, including designing, coding, testing, and debugging applications.
o Proficiency in programming languages such as Python, Ruby, or similar languages. Experience in Javascript/Typescript a plus.
o Familiarity with software development methodologies (Agile, Scrum, etc.) and tools (JIRA, Confluence, etc.).
o Strong understanding of data structures, algorithms, and object-oriented design principles.
o Experience with back-end frameworks and technologies (e.g., FastAPI, Flask, Django, Rails, etc.). Experience with front-end frameworks (e.g. React, NextJS, etc.) a plus.
o Knowledge of database systems (SQL, NoSQL) and data modeling concepts.
o Excellent problem-solving skills and a detail-oriented mindset.
o Effective communication skills, both written and verbal.
Core Competencies Required:
o Knowledge and Application: Complete knowledge and full understanding of areas of specialization, principles and practices within a professional discipline. Assesses unusual circumstances and uses sophisticated analytical and problem solving techniques to identify causes. Resolves and assesses a wide range of issues in creative ways and suggests variations in approach. This job is a fully qualified, experienced professional, journey-level position.
o Complexity & Problem Solving: Works on problems of diverse scope where analysis of information requires evaluation of identifiable factors. Devises solutions based on limited information and precedent and adapts existing approaches to resolve issues. Uses evaluation, judgment, and interpretation to select the right course of action. Work is done independently and is reviewed at critical points.
o Collaboration & Interaction: Enhances relationships and networks with senior internal/external partners who are not familiar with the subject matter often requiring persuasion. Adapts style to different audiences and often advises others on difficult matters.