______________________
__________________
____________________
_____________________
________________________
______________________
____________________
____________________
_____________________
___________________
Software Engineer Location: London Length: 6 Months Rate: From £52.40 p/h PAYE (Approx. £108.9K per annum) Hours: 9am-6pm This client is a top 5 tech giant and owner of some of the world's most popular social media platforms and instant messaging apps, connecting billions of people across the globe. Job description: The main function of a software engineer is to apply the principles of computer science and mathematical analysis to the design, development, testing, and evaluation of the software and systems that make computers work. A typical software engineer researches, designs, develops and tests software for general computing applications. This organisation is pursuing fundamental research aimed at developing novel AI foundation models for virtual characters. As part of this project, we would like to develop a research demonstrator that illustrates the fundamental advancements achieved in this space. Job Responsibilities: Building on the existing prototype, the candidate will directly work with the research team to develop a client-server solution to enable reliable and effective front-end/back-end communication. The candidate will build on the APIs of AI model to develop the back-end component. The candidate will directly work with the research team to develop the GUI on the front-end and the rendering components of the virtual character and environment. The candidate will be responsible for the deployment of the backend on the organisations internal servers. Skills: Verbal and written communication skills, problem solving skills, customer service and interpersonal skills. Expert ability to work independently and manage one's time. Expert mentoring skills necessary to provide support and constructive performance feedback. Expert knowledge of the full software development lifecycle: from business/systems analysis, through requirements gathering and functional specification authoring, to development, testing and delivery. Expert ability to troubleshoot issues and make system changes as needed to resolve issue. Expert knowledge of computer hardware and software. Experience in developing web-based applications including front-end and back-end development and deployment. Experience in technologies such as Unity, WebGL, Three.js, and Flask. Coding skills in JS, Rust, Python, C#. Experience in deploying ML models. Education/Experience: Bachelor's degree in computer science, software engineering or relevant field required
3D Technical Animator Location: London Length: 6 Months Rate: £51.92 p/h PAYE (Approx. £107.9K per annum) Hours: 9am 6pm This client is a top 5 tech giant and one of the world's most popular search engines. This is a hybrid role, so you will split your time between home office and the clients offices in central London. On-site you will be able to access their amazing facilities and quirky working spaces, as well as free breakfast/ lunch/ dinner, on-site gyms, outdoor spaces and roof gardens, wellness rooms and sleep pods. Job description: You are distinguished by your ability to self-direct, not just your technical contributions, but the planning and scoping for a project. You act as a point of contact for your cross-functional partners. Faced with a problem, you will scope it, research possible solutions and technologies, and recommend a solution that includes both the short-term and long-term needs. Generate the ideas required to solve technical problems, even if the problem is ambiguous, and take full ownership of the solution, often involving many activities beyond coding. Discern when to iterate or build a new, with foresight to anticipate and address future issues. Guide the integration of multiple adjacent project timelines, goals, and objectives. Build working collaborations with cross-functional peers. Identify and share opportunities and technical context that inform cross-functional efforts. Knowledge & Skills: Ability to select or design an algorithm and appropriate data structures to solve a problem or improve a product, framework, or the scale/speed/efficiency/reliability of a system. Ability to define the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements. This includes validating for correctness, functionality, reliability, and other attributes. Knowledge of systems architecture, constraints, and optimal resource configurations. This includes the ability to apply the knowledge to optimize system testability, performance, reliability, and cost. Ability to analyze information, draw conclusions, generate alternatives and solutions, and evaluate outcomes. This includes the ability to use data to add value to business planning and strategies. Proactively identify impactful business opportunities and/or gaps in systems and workflows. Develop plan of action and influence / drive team for large business outcomes. Ability to extract relevant information from reading code in one or more core languages and frameworks, including the ability to leverage the code as a resource to create work output for users or stakeholders. Knowledge of programming languages. This includes programming practices, major features and capabilities, and system management tools. Ability to redesign or refactor code or systems to address technical debt, improve readability, and more easily facilitate future improvements to promote a healthy and sustainable codebase. This includes developing tooling to enable the maintenance of such code or system health and/or the prevention of increased technical debt. Responsibilities: Design systems within the scope of their area. Clarify problems to understand gaps, break down problems into solvable parts and assess trade-offs to ensure coherent design, participate in or lead design reviews with peers and stakeholders to decide amongst available technologies. Write product or system development code for tasks with minimal assistance. Conduct testing on code, design code to allow for easy testing, and write test case descriptions to ensure coverage of critical components. Review code developed by other engineers and provide feedback to ensure best practices (e.g., style guidelines, checking code in, accuracy, testability, and efficiency). Manage, oversee, and deliver team projects in any stage effectively, (i.e., stay within scope, have productive engagement with stakeholders ensuring that timelines, progress, metrics and/or pivots are reported to key stakeholders). Address or escalate questions from stakeholders. Set up or improve test/monitoring/survey infrastructure, systems or processes to ensure engineering excellence (e.g., code health, system maintainability and scalability over time), contribute to existing documentation or educational content and adapt content based on product/program updates and user feedback, triage product or system issues and debug/track/resolve by analyzing the sources of issues and the impact on hardware, network, or service operations and quality.