Associate Software Engineer - Pay Web in Belfast, New York at Olo
Explore Related Opportunities
Job Description
Develop an understanding of the team's domain and technology stack and actively seeks guidance to grow technical expertise.
Handle small-to-medium features with support from more senior engineers, ensuring tasks are completed according to set timelines.
Write code adhering to established coding standards and participates in code reviews to learn best practices.
Collaborate with team members to understand feature requirements and implements solutions with guidance.
Focus on building reliable and maintainable software components, contributing to team deliverables with a focus on quality.
Utilise version control systems to manage code changes and maintain a consistent development workflow.
Participate in team meetings and sprint ceremonies, such as daily stand-ups and sprint retrospectives, contributing updates and feedback.
Engage in learning activities, including game days and training sessions, to build familiarity with the company's tools and processes.
Troubleshoot and debug issues with guidance, learning to identify and resolve common software bugs.
Demonstrate a willingness to collaborate with other engineers and stakeholders, developing teamwork skills necessary for larger projects.
Demonstrate ownership of the team's delivery pipeline, ensuring that code quality, testing standards, and deployment practices are continuously optimised.
Active participation in on-call duties is required, with specific responsibilities determined by your assigned team and area of expertise.
Bachelor’s Degree in Computer Science, Software Engineering, or a related field, or equivalent practical experience.
Minimum of one year industry experience in a Software Engineering/Development position (post academic studies)
Basic Programming Skills: Proficient in at least one programming language (ideally C#, TypeScript, React) and familiar with basic programming constructs and design patterns.
Version Control Systems: Basic understanding of version control tools (e.g., GitHub) and how to use them for source code management.
Unit Testing: Familiarity with writing unit tests to validate small software components and test-driven development frameworks (e.g., NUnit, Jest).
Distributed Systems Fundamentals: Basic understanding of how distributed systems work, focusing on building reliable components.
Collaboration Tools: Experience using collaboration platforms for development, such as Jira, Confluence, and GitHub.