Subscribe to the latest remote jobs:

Software Engineer - Data & AI

🇬🇧 United Kingdom

Java

Python

C#

JavaScript

Machine Learning

Design

UI/UX

Devops

Testing

Software Engineer - Data & AI

from 🇬🇧 United Kingdom

 

We are seeking a talented and motivated Software Engineer to join our Technology & Engineering team at ECA International. The successful candidate will be responsible for designing, developing, and maintaining software solutions that meet the needs of our clients and internal stakeholders. As a key member of the development team, you will work closely with other engineers, product managers, and designers to deliver high-quality software that supports our business objectives. 

Key Responsibilities: 

  • Software Development: Design, develop, and maintain software applications using modern programming languages and frameworks. Ensure that software solutions are scalable, reliable, and efficient. 
  • Collaboration: Work closely with cross-functional teams, including product managers, UX/UI designers, and QA engineers, to gather requirements, design solutions, and implement features. Participate in code reviews and provide constructive feedback to peers. 
  • Problem-Solving: Analyse complex problems and identify the most effective solutions. Write clean, maintainable, and well-documented code to address technical challenges. 
  • Testing and Debugging: Write unit tests and perform debugging to ensure software quality. Collaborate with QA teams to identify and fix bugs and ensure the reliability of software solutions. 
  • Continuous Improvement: Stay current with industry trends, emerging technologies, and best practices in software development. Continuously improve code quality, development processes, and tools. 
  • Documentation: Create and maintain technical documentation, including system designs, API documentation, and user guides. Ensure that documentation is accurate, up-to-date, and easily accessible. 
  • Support: Provide support and troubleshooting assistance to internal teams and end-users. Address software issues and implement solutions promptly to minimize downtime. 

Qualifications: 

Essential: 

  • Bachelor’s degree in Computer Science, Software Engineering, or a related field. 
  • Proficiency in one or more modern programming languages (e.g., Java, C#, Python, JavaScript). 
  • Strong understanding of software development principles, including object-oriented design, data structures, and algorithms. 

Desirable: 

  • Master’s degree in a relevant field. 
  • Experience with cloud platforms, microservices architecture, or DevOps practices. 
  • Familiarity with Agile methodologies and tools such as Jira or Trello. 

Experience: 

  • Proven experience in software development, with a strong portfolio of completed projects. 
  • Experience working in a collaborative team environment and contributing to software development projects. 

Skills and Behaviours: 

  • Technical Expertise: Strong programming skills and knowledge of software development best practices. 
  • Problem-Solving: Ability to analyse problems, identify solutions, and implement them effectively. 
  • Collaboration: Excellent teamwork and communication skills, with the ability to work well with cross-functional teams. 
  • Adaptability: Ability to learn new technologies and adapt to changing project requirements. 
  • Attention to Detail: Strong attention to detail, with a focus on writing clean, maintainable code. 
  • Continuous Learning: Commitment to continuous learning and professional development in software engineering. 
by @maxrusakovic