Who We Are AGITO is a multinational engineering company specializing in the development and implementation of automation and technology solutions for the Food, Beverage, Parcel & Post, and Warehousing sectors. Our expertise lies in logistics, distribution, production, materials handling, robotic & sortation automation, supported by sophisticated software solutions. We prioritize efficient, structured, and cost-effective engineering, fostering a culture of innovation and embracing contemporary methodologies. Our mission is to enhance efficiency and productivity for our customers by delivering cutting-edge automation technologies. AGITO's recent partnership with Hilton Food Group is a significant catalyst for our global expansion. With Hilton's support, we are penetrating new markets and revolutionizing the automation sector. As part of our expansion strategy, we seek an Developer to join our Software Team in United Kingdom. This individual should be ambitious, curious, and possess strong teamwork skills. They will collaborate closely with our local partners whilst supporting the other parts of business and customers based in Australia, Canada, Ireland, EU. Additionally, they will work alongside our Software team in the UK to develop project and product based world-class software solution. This role offers the ideal candidate an opportunity to join a rapidly growing enterprise at its foundational stage. At AGITO, you'll become part of a global team of innovators dedicated to bringing our customers' automation vision to life. Who Are You You are someone with experience in the manufacturing or assembling of industrial conveyors, elevating systems or other industrial transport or automation solutions? Are you a curious engineer who wants to develop unique solutions for our clients? Do you consider yourself qualified: · Process-oriented with strong attention to detail · Self-motivated and able to work effectively remotely · Able to work under pressure · Naturally organized · Able to multitask efficiently · Flexible and adaptable to an ever-changing environment · Experience in software development · Proficiency in Object-Oriented Programming (OOP) · Strong problem-solving and analytical skills · Experience with large-scale systems and third-party equipment integration is a plus · Bachelor's or Master's degree in Computer Science or a related field · Experience in Industrial Automation The Role This role would suit a driven and motivated an Engineer. Day to day you will: · Test Planning Test Strategy: Develop test strategies that outline the scope, approach, resources, and schedule of testing activities. Test Case Creation: Design test cases based on requirements, user stories, or product specifications to cover different functionality and scenarios of the software. Test Plan Documentation: Document the test plan, which includes the testing scope, objectives, resources required, and timeline. · Test Execution Manual Testing: Perform manual testing by executing test cases on the software to check for functionality, usability, and performance issues. This includes testing specific features, workflows, and user interactions. Automated Testing: Write and execute automated tests using testing frameworks and tools (e.g., TestNG, JUnit, or Cypress) to validate functionality and catch regressions efficiently. Regression Testing: Test new features and ensure they don't break existing functionality, often by executing previous test cases. Smoke and Sanity Testing: Perform initial quick checks (smoke testing) and shallow testing (sanity testing) to confirm the basic functionality of the software before more detailed testing begins. · Bug Reporting & Tracking Bug Identification: Identify bugs and issues, documenting them clearly with sufficient details to help developers reproduce the problem. Bug Reporting: Use bug tracking tools (e.g., Azure) to report issues and track their resolution. Re-testing: Once developers fix the bugs, re-test the software to confirm the issue has been resolved and that no new problems have been introduced. · Test Automation Test Scripts: Write automation scripts using programming languages like C#, JavaScript, or specific testing frameworks (e.g., Selenium, Cypress, Appium) to automate repetitive and time[1]consuming testing tasks. Continuous Integration (CI): Integrate automated tests into a CI/CD pipeline using tools like Azure to ensure that tests are automatically run whenever code is committed to the repository. Test Maintenance: Continuously update and maintain automated tests as the software evolves to ensure that they remain relevant and effective. · Performance Testing Load Testing: Assess how well the software performs under expected and high traffic loads. Tools like JMeter, LoadRunner, or Gatling are used to simulate large numbers of users and ensure the system can handle it. Stress Testing: Push the system beyond its limits to find out how it fails, in order to improve its robustness and error handling. Scalability Testing: Verify whether the system can scale effectively as it handles an increasing volume of data or users. · Security Testing Vulnerability Testing: Identify potential security vulnerabilities and exploits within the software by performing tests like penetration testing or using tools like OWASP ZAP. Data Protection: Ensure that sensitive data (e.g., personal information, passwords) is stored and transmitted securely and is not vulnerable to attacks like SQL injection or XSS. · User Acceptance Testing (UAT) UAT Support: Work with stakeholders, business analysts, or end-users to support and verify User Acceptance Testing (UAT), ensuring the product meets business requirements and is ready for deployment. Feedback Collection: Gather feedback from UAT testers to understand user concerns or issues and address them accordingly. · Team Collaboration Work with Developers: Collaborate closely with developers to understand code changes, share feedback, and help reproduce bugs. Work with Business Analyst and Product Managers: Understand the software requirements and expected behaviour to ensure proper test coverage. Agile/Scrum Participation: Actively participate in Agile or Scrum processes (sprints, stand-ups, retrospectives) to align testing activities with development cycles. · Documentation and Reporting Test Reports: Document testing activities, including test cases, test results, and bug reports. Provide clear feedback to the development team. Test Metrics: Track testing progress using metrics like test coverage, defect density, and test execution rate, and report on the quality of the software. Test Case Maintenance: Continuously update test cases as software evolves and new features are added. Your Skills The successful candidate should demonstrate: · Technical Skills Manual Testing: Proficiency in creating and executing test cases manually based on requirements and design documents. Automated Testing: Experience with test automation tools like Selenium, JUnit, TestNG, Appium, and frameworks for test automation scripting. Programming Knowledge: Basic to intermediate knowledge of programming languages such as Python, C#, Java for writing automated tests. Bug Tracking Tools: Proficiency with tools like Azure for bug reporting and tracking. Version Control: Familiarity with version control systems such as Git and platforms like GitHub/Azure Repo. Test Automation Frameworks: Knowledge of test automation frameworks, such as Selenium,, TestNG. API Testing: Experience with testing RESTful APIs using tools like Postman. Performance Testing Tools: Knowledge of performance testing tools like Apache JMeter, LoadRunner, and Gatling. CI/CD Integration: Experience in integrating tests into continuous integration and deployment pipelines using tools. · Soft Skills Attention to Detail: Ability to spot even the smallest defects in software and catch edge cases that may be missed. Problem-Solving: Strong analytical thinking to identify root causes of defects and propose solutions. Communication: Clear and effective communication skills to report issues, document test results, and collaborate with development teams. Collaboration: Ability to work well in cross-functional teams, communicate with developers, product managers, and designers. Time Management: Prioritize and manage multiple testing tasks in a fast-paced environment to meet deadlines. Critical Thinking: Ability to think outside the box and test software in ways users may not have anticipated. · Additional Skills Agile Methodologies: Familiarity with Agile/Scrum development methodologies and experience working in Agile teams. Security Testing: Basic understanding of security testing practices, including how to identify security vulnerabilities. Test Case Management: Familiarity with test management tools like TestRail, qTest, or Quality Centre. Database Knowledge: Understanding of databases and SQL for data verification and integration testing. · Strong verbal & written communication skills · Good verbal and written English Qualifications and Experience Levels: · Relevant Computer/Software/Information Technology degree is preferred or equivalent professional experience · Experience in a similar industry with around 4-5 years of experience · A strong portfolio showcasing test projects (personal projects, open-source contributions, or work done in previous roles) is valuable. · Practical experience with designing, developing, and deploying complete applications test cases is required. At AGITO We are all about creating better experiences - for our customers and for each other. We work hard to support and nurture our people, and as the business continues to expand into international markets, we offer ongoing career development and opportunities for our team. Please note - To apply you must reside in United Kingdom and have a legal resident permit.