877 Software Development jobs in London
Automotive Software Development Engineer (Embedded)
Posted 19 days ago
Job Viewed
Job Description
Responsibilities:
- Design, develop, and implement embedded software for automotive control units and systems using C/C++.
- Collaborate with hardware engineers to define software requirements and specifications.
- Develop and maintain software using real-time operating systems (RTOS).
- Implement and test software components, ensuring functionality, performance, and reliability.
- Perform unit testing, integration testing, and system testing.
- Debug and troubleshoot software issues, identifying root causes and implementing effective solutions.
- Work with AUTOSAR standards and tools for automotive software development.
- Participate in code reviews and contribute to the improvement of software development processes.
- Stay current with automotive industry trends, standards (e.g., ISO 26262), and technologies.
- Document software designs, implementations, and test results.
Qualifications:
- Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field.
- Proven experience in embedded software development, preferably within the automotive industry.
- Strong proficiency in C and C++ programming languages.
- Experience with real-time operating systems (RTOS) such as QNX, VxWorks, or similar.
- Familiarity with automotive communication protocols (e.g., CAN, LIN, Ethernet).
- Knowledge of AUTOSAR architecture and development tools.
- Understanding of software development lifecycle (SDLC) and Agile methodologies.
- Experience with debugging tools and techniques for embedded systems.
- Knowledge of functional safety standards (ISO 26262) is a plus.
- Excellent problem-solving and analytical skills.
- Strong communication and teamwork abilities.
Senior Software Development Engineer - Embedded Systems
Posted 19 days ago
Job Viewed
Job Description
Key Responsibilities:
- Design, develop, and maintain embedded software for automotive systems using C/C++.
- Implement software according to system requirements and architectural designs.
- Develop and execute unit tests, integration tests, and system tests.
- Debug and resolve software defects identified during testing or in production.
- Collaborate with hardware engineers to define hardware-software interfaces.
- Participate in code reviews and contribute to software quality assurance.
- Optimize software performance, memory usage, and power consumption.
- Work with real-time operating systems (RTOS) and embedded Linux.
- Stay current with emerging embedded systems technologies and automotive standards.
- Mentor junior software engineers and share technical expertise.
- Contribute to architectural discussions and design decisions.
Qualifications:
- Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field.
- Minimum of 6 years of professional experience in embedded software development.
- Proficiency in C and C++ programming languages.
- Strong experience with real-time operating systems (RTOS).
- Knowledge of embedded systems architecture and microcontrollers.
- Familiarity with automotive communication protocols (CAN, LIN, Automotive Ethernet).
- Experience with debugging tools and techniques for embedded systems.
- Understanding of software development lifecycle (SDLC) and Agile methodologies.
- Excellent analytical and problem-solving skills.
- Strong communication and teamwork abilities.
- Experience with AUTOSAR is a plus.
Head of Software Development
Posted today
Job Viewed
Job Description
About ZELP
ZELP is an agricultural technology company committed to creating a sustainable future for agriculture - one that meets the needs of present and future generations, promoting human and environmental health, animal welfare, and social and economic equity.
Our first focus is to develop and scale technology that measures and mitigates methane emissions in the livestock industry. Today, 1.3 billion people rely on the industry for their livelihoods and food security. However, it is the single biggest human-driven source of methane emissions globally, emitting more than both the oil & gas industry and the coal industry.
The deployment of our technologies on a global scale has the potential to drive half the global methane reduction needed by 2030, and to greatly transform the beef and dairy industries.
ZELP was an inaugural winner of the Terra Carta Design Lab, and has received funding and support from the European Commission, Innovate UK, The Global Methane Hub and the Gates Foundation.
About the role
As Head of Software Development, you will oversee the architecture, development, and delivery of all software components, spanning web applications, backend systems, and Machine Learning (ML) infrastructure. You will also be a key partner to the heads of Hardware, Design Engineering, and Animal Science, ensuring software is seamlessly integrated with physical systems, user experience, and domain expertise.
This is a hands-on, strategic leadership role where you'll balance technical depth with people management, guiding your team while collaborating with cross-functional leaders to drive innovation.
Responsibilities
Technical Leadership
- Define, implement, and scale the software architecture across web, backend, and ML systems.
- Maintain strong engineering standards for code quality, security, testing, and deployment.
- Lead key technical initiatives, occasionally contributing code or architecture reviews.
- Drive integration of software with hardware systems, sensors, and data pipelines.
Management & Team Leadership
- Build, lead, and mentor a multidisciplinary engineering team.
- Establish effective workflows for development, QA, deployment, and iteration.
- Foster a collaborative, innovative, and high-performance engineering culture.
- Partner with People/HR in hiring and scaling the team.
Cross-Functional & Strategic
- Collaborate closely with the heads of Hardware, Design Engineering, and Animal Science to ensure end-to-end product integration.
- Translate business and research needs into scalable software solutions.
- Balance speed of delivery with long-term maintainability and scalability.
- Support leadership in communicating technical vision to investors, partners, and stakeholders.
Requirements
- 7+ years of software development experience, with at least 3 in a leadership role.
- Proven expertise in web application development (frontend + backend).
- Hands-on experience with machine learning workflows and/or data-heavy systems.
- Strong understanding of cloud infrastructure and DevOps practices.
- Experience collaborating with cross-functional hardware or science-focused teams.
- Exceptional communication and leadership skills.
Nice-to-Have
- Prior experience in startups or multi-disciplinary product environments.
- Familiarity with MLOps and embedded systems integration.
- Background or interest in scientific/biological domains.
Our Tech Stack (Current & Planned)
- Frontend: React, TypeScript
- Backend: , Pytho,, REST & GraphQL APIs
- Cloud & Infra: AWS (ECS, S3, Lambda), Docker, Cloudformation, Pulumi, CI/CD with GitHub Actions
- ML/AI: PyTorch, TensorFlow, scikit-learn, MLflow for experiment tracking, Zenml for ML pipelines
- Data: PostgreSQL, DynamoDB, data pipelines with Zenml
(We're open to evolving the stack and expect you to influence technical decisions as we scale.)
Junior Software Development Apprentice
Posted 1 day ago
Job Viewed
Job Description
Responsibilities:
- Assist senior developers in writing, testing, and debugging code across various programming languages.
- Learn and apply best practices in software development, version control (Git), and agile methodologies.
- Participate in code reviews and contribute to technical discussions.
- Develop and maintain documentation for software projects.
- Collaborate with cross-functional teams to understand project requirements and deliver effective solutions.
- Troubleshoot and resolve software defects and issues.
- Engage in continuous learning to stay updated with emerging technologies and industry trends.
- Contribute to the design and architecture of new software features.
- Perform unit testing and integration testing to ensure code quality.
- Support the deployment and maintenance of applications.
Qualifications:
- A strong passion for technology and a desire to learn software development.
- Basic understanding of programming concepts is advantageous but not essential.
- Excellent problem-solving skills and a meticulous attention to detail.
- Strong communication and interpersonal skills, with the ability to work effectively in a remote team.
- Self-motivated and disciplined, with the ability to manage time effectively and meet deadlines.
- Willingness to undertake a structured training program, potentially leading to industry-recognized certifications.
- Eligibility to work in the UK.
This is an exceptional opportunity to gain invaluable industry experience without the need for prior formal qualifications in computer science. If you are driven, curious, and ready to build a successful career from the ground up, we encourage you to apply. This role is based in London, England, UK and operates on a remote-first basis, offering flexibility and the chance to work from anywhere within the UK. Join our client and shape the future of technology.
Junior Software Development Apprentice
Posted 7 days ago
Job Viewed
Job Description
Junior Software Development Apprentice
Posted 10 days ago
Job Viewed
Job Description
What you will learn and do:
- Assist in the design, development, testing, and debugging of software applications.
- Learn and apply programming languages such as Python, JavaScript, or Java.
- Contribute to front-end development using HTML, CSS, and modern JavaScript frameworks.
- Gain exposure to back-end development and database management.
- Participate in code reviews and learn best practices from senior developers.
- Assist in creating and maintaining technical documentation.
- Understand and apply Agile development methodologies.
- Collaborate with team members using remote communication tools.
- Troubleshoot and resolve basic software issues.
- Develop problem-solving skills and a systematic approach to coding.
- Gain practical experience with version control systems like Git.
- Contribute to testing strategies and execution.
- A strong passion for software development and a desire to learn.
- Basic understanding of programming concepts (even from personal projects or online courses).
- Good analytical and problem-solving skills.
- Excellent communication and teamwork abilities, crucial for remote collaboration.
- Eagerness to take on new challenges and learn new technologies.
- Ability to work independently and manage time effectively in a remote setting.
- Reliable internet connection and a suitable remote workspace.
- Minimum of 5 GCSEs (or equivalent) at grades A*-C/9-4, including Maths and English.
- Ideally, a Level 3 qualification in a related field (e.g., BTEC in IT, A-Level Computer Science) or demonstrable equivalent experience/interest.
- Must be 16 years or older and eligible to undertake an apprenticeship in the UK.
Graduate Software Development Programme
Posted 17 days ago
Job Viewed
Job Description
Be The First To Know
About the latest Software development Jobs in London !
Graduate Software Development Program
Posted 19 days ago
Job Viewed
Job Description
Key responsibilities:
- Participate in the full software development lifecycle, from requirements gathering and design to coding, testing, and deployment.
- Collaborate with senior developers and mentors to understand project goals and contribute effectively to team objectives.
- Write clean, efficient, and well-documented code in languages such as Python, Java, C++, or JavaScript.
- Develop and execute unit tests and integration tests to ensure software quality and reliability.
- Assist in debugging and resolving software defects reported by QA or end-users.
- Learn and apply agile development methodologies (e.g., Scrum, Kanban) to project work.
- Contribute to code reviews, offering constructive feedback and learning from peers.
- Research and evaluate new technologies and tools that can enhance development efficiency and product capabilities.
- Prepare technical documentation for developed software modules and features.
- Engage in continuous learning and skill development through training, workshops, and self-study.
This is a fantastic opportunity for individuals with a strong academic background in Computer Science, Software Engineering, or a related field, who possess a passion for technology and a drive to learn. Excellent analytical and problem-solving skills, combined with strong communication and teamwork abilities, are essential. The program offers a hybrid working model, combining remote work flexibility with in-office collaboration to foster team synergy and provide access to mentorship and resources. This role is based in London, England, UK , offering exposure to a leading hub of technological innovation.
Senior Project Manager - Software Development
Posted 3 days ago
Job Viewed
Job Description
As a Senior Project Manager, you will be responsible for the end-to-end management of software development lifecycles, from initiation and planning through to execution, monitoring, control, and closure. You will work closely with engineering teams, product managers, stakeholders, and clients to define project scope, objectives, deliverables, and success criteria. Your expertise in Agile methodologies (Scrum, Kanban) will be essential for fostering efficient development processes, managing sprint planning, facilitating daily stand-ups, and ensuring timely delivery of features. You will identify and mitigate project risks, manage stakeholder expectations, and ensure clear communication throughout the project. The ideal candidate possesses exceptional leadership, communication, and organisational skills, with a deep understanding of software development principles and project management best practices. This role requires a proactive approach to problem-solving and a commitment to driving successful project outcomes in a remote-first environment.
Key Responsibilities:
- Lead and manage multiple complex software development projects simultaneously.
- Define project scope, goals, and deliverables that support business objectives in collaboration with senior management and stakeholders.
- Develop and manage detailed project plans, including timelines, resources, and budgets.
- Facilitate Agile ceremonies, including sprint planning, daily stand-ups, sprint reviews, and retrospectives.
- Identify, assess, and manage project risks and dependencies.
- Effectively communicate project status, issues, and successes to all stakeholders.
- Build, lead, and motivate high-performing, distributed project teams.
- Ensure adherence to quality standards and best practices throughout the software development lifecycle.
- Manage vendor relationships and deliverables where applicable.
- Resolve project issues and conflicts proactively.
- Continuously improve project management processes and methodologies.
- Utilise project management software and tools for tracking and reporting.
- Bachelor's degree in Computer Science, Engineering, Business, or a related field. Master's degree preferred.
- Minimum of 8 years of experience in project management, with at least 5 years focused on software development projects.
- Proven experience managing projects using Agile methodologies (Scrum, Kanban).
- Demonstrated success in delivering complex software projects on time and within budget.
- Strong understanding of the software development lifecycle (SDLC).
- Excellent leadership, communication, negotiation, and interpersonal skills.
- Proficiency with project management tools (e.g., Jira, Confluence, Asana, MS Project).
- Ability to work independently and lead effectively in a fully remote environment.
- PMP, CSM, or other relevant project management certifications are highly desirable.
Graduate Software Development Programme - Remote
Posted 8 days ago
Job Viewed
Job Description
Programme Overview:
- An intensive 12-month programme designed for recent graduates with a passion for technology and software engineering.
- Comprising of structured training modules covering core programming languages, software architecture, agile methodologies, and best practices.
- Participants will be assigned to cross-functional development teams, contributing to various stages of the software development lifecycle.
- Exposure to a wide range of technologies and tools, including cloud computing, DevOps practices, and modern frontend/backend frameworks.
- Mentorship from experienced software engineers, providing guidance, support, and career development advice.
- Opportunities to work on innovative projects that directly impact the business.
- Development of crucial soft skills, including teamwork, communication, problem-solving, and time management.
- Focus on building a strong foundation in software engineering principles and practical application.
- Regular performance reviews and feedback sessions to track progress and identify areas for growth.
- Potential for full-time employment upon successful completion of the programme.
- Participants are expected to actively engage in all training sessions and project work.
- Encouragement to explore new technologies and propose innovative solutions.
- Recent graduate with a Bachelor's or Master's degree in Computer Science, Software Engineering, or a closely related technical field.
- Strong academic record with a minimum of a 2:1 honours degree or equivalent.
- Demonstrated passion for software development, evidenced through personal projects, coding challenges, or relevant internships.
- Fundamental understanding of programming concepts and at least one programming language (e.g., Python, Java, C++, JavaScript).
- Excellent problem-solving and analytical skills.
- Strong communication and interpersonal skills, with the ability to collaborate effectively in a remote team environment.
- Proactive attitude, eagerness to learn, and a strong work ethic.
- Ability to work independently and manage time effectively in a remote setting.
- Candidates must be eligible to work in the UK.