Job Description
We're seeking a talented and results-oriented Software Engineer to join our dynamic team and play a key role in the development and improvement of our digital products and solutions. You'll leverage your strong technical skills and collaborative spirit to design, build, test, and deploy high-quality software within an Agile development framework.
Responsibilities:
- Participate in all phases of the software development lifecycle (SDLC), including design, implementation, testing, deployment, and maintenance.
- Work independently under general supervision on short-term assignments, applying sound judgment and technical expertise.
- Collaborate with Senior Engineers, Scrum Masters, Project Managers, and other stakeholders to understand business needs and translate them into effective technical solutions.
- Analyze, design, develop, test, and maintain new and existing software solutions aligned with established business requirements and IT standards.
- Contribute to the design and development of the project's technical architecture.
- Develop and implement automated unit and UI tests to ensure code quality and functionality.
- Advocate for and implement standard development methodologies to promote efficiency and maintainability.
- Participate in peer code reviews, fostering a collaborative and knowledge-sharing environment.
- Effectively communicate technical information to both technical and non-technical audiences, verbally and in writing.
Qualifications:
- Bachelor's degree in Computer Science or a related field AND 2-4 years of relevant experience with programming technologies.
- OR, in lieu of a degree, 3-6 years of combined education and relevant work experience in software development.
- Strong software development skills with the ability to deliver high-quality solutions under tight deadlines.
- Excellent teamwork and communication skills, with the ability to collaborate effectively in a fast-paced environment.
- Proficiency in a variety of programming languages and technologies commonly used in your domain (e.g., Python, Java, C#, JavaScript, SQL databases).
- Strong understanding of software development principles, data structures, and algorithms.
- Experience working in an Agile development environment is a plus.
- Initiative and a willingness to go beyond basic implementation tasks are valued.
Additional Considerations:
- This role may require occasional extended hours or on-call support during critical times.