18 Back End Development jobs in Bahrain
Remote Software Engineering Apprentice
Posted today
Job Viewed
Job Description
Key Responsibilities:
- Assisting senior developers in coding, testing, and debugging software applications.
- Learning and applying programming languages such as Python, Java, or JavaScript.
- Participating in code reviews and contributing to team discussions.
- Documenting software designs, processes, and user guides.
- Gaining exposure to various development tools and platforms (e.g., Git, Docker, CI/CD pipelines).
- Troubleshooting and resolving technical issues under guidance.
- Collaborating effectively with team members in a remote setting.
- Contributing to the development of new features and enhancements.
- Engaging in continuous learning and professional development opportunities.
- Supporting the team in achieving project milestones and deadlines.
Remote Software Engineering Intern
Posted 1 day ago
Job Viewed
Job Description
Responsibilities:
- Assist in the design, development, and implementation of software features.
- Write, test, and debug code under the guidance of senior engineers.
- Participate in code reviews and contribute to improving code quality.
- Collaborate with team members through virtual communication channels.
- Contribute to technical documentation and project reporting.
- Research and learn new technologies relevant to ongoing projects.
- Troubleshoot and resolve software defects.
- Participate in team meetings and provide updates on progress.
- Gain practical experience in an Agile development environment.
Qualifications:
- Currently pursuing or recently completed a Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
- Solid understanding of programming fundamentals and data structures.
- Familiarity with at least one programming language (e.g., Python, Java, C++, JavaScript).
- Basic knowledge of software development lifecycle and methodologies.
- Excellent problem-solving and analytical skills.
- Strong written and verbal communication skills for remote collaboration.
- Ability to work independently and manage time effectively.
- Eagerness to learn and adapt to new technologies.
- Previous internship or personal project experience is a plus.
Junior Software Engineering Apprentice
Posted 1 day ago
Job Viewed
Job Description
Responsibilities:
- Assist in coding, testing, and debugging software applications.
- Learn and apply programming languages and development tools.
- Collaborate with senior engineers on project tasks.
- Participate in code reviews and team meetings.
- Contribute to software documentation.
- Learn about agile development methodologies.
- Troubleshoot and resolve software issues.
- Develop foundational skills in software engineering.
- High school diploma or equivalent; pursuing or holding a degree in Computer Science, Engineering, or a related field is preferred.
- Basic understanding of programming concepts and logic.
- Passion for software development and technology.
- Strong problem-solving and analytical skills.
- Good communication and teamwork abilities.
- Eagerness to learn and adapt to new technologies.
- Ability to manage time effectively and meet deadlines.
- Familiarity with at least one programming language is a plus.
Graduate Trainee - Software Engineering
Posted 2 days ago
Job Viewed
Job Description
Program Overview:
- Gain practical experience in software development, coding, testing, and deployment across various technologies.
- Work on challenging projects alongside experienced engineers in an agile environment.
- Receive dedicated mentorship from senior software engineers to guide your learning and career development.
- Participate in workshops and training sessions covering essential software engineering principles, best practices, and cutting-edge technologies.
- Develop proficiency in programming languages such as Python, Java, C++, or JavaScript, and relevant frameworks.
- Learn about cloud computing platforms (AWS, Azure, GCP) and DevOps practices.
- Contribute to code reviews, design discussions, and problem-solving sessions.
- Understand software architecture, database design, and API development.
- Develop crucial soft skills, including communication, teamwork, and time management in a remote setting.
- Explore opportunities for full-time employment upon successful completion of the trainee program.
Ideal Candidate Profile:
- Recent graduate (within the last 1-2 years) with a Bachelor's or Master's degree in Computer Science, Software Engineering, or a related technical field.
- Strong foundational knowledge of programming concepts and data structures.
- A passion for technology and a keen interest in pursuing a career in software engineering.
- Excellent analytical and problem-solving skills.
- Proactive, self-motivated, and eager to learn and take on new challenges.
- Ability to work independently and collaboratively in a remote team environment.
- Good communication and interpersonal skills.
- Previous internship or personal project experience in software development is a plus, but not strictly required.
- Must have a reliable internet connection and a suitable home office setup for remote work.
This fully remote internship is an unparalleled opportunity to gain industry-standard experience and launch your career in software engineering from anywhere in the world. Apply now to become part of our innovative and supportive virtual community.
Junior Software Engineering Apprentice
Posted 2 days ago
Job Viewed
Job Description
Program Overview:
- Participate in intensive training modules covering fundamental programming concepts, software development lifecycle, and relevant technologies.
- Work closely with senior engineers on assigned projects, gaining practical experience in coding, debugging, and testing.
- Learn to contribute to codebases using modern programming languages and frameworks (e.g., Python, Java, JavaScript, React, Node.js – specific technologies will vary by project).
- Engage in code reviews, receive constructive feedback, and learn best practices for writing clean, efficient, and maintainable code.
- Develop an understanding of version control systems (e.g., Git) and agile development methodologies.
- Collaborate with team members through virtual meetings, instant messaging, and project management tools.
- Assist in the design, development, testing, and deployment of software applications.
- Gain exposure to different areas of software engineering, such as frontend development, backend development, or data engineering.
- Receive ongoing mentorship and guidance from experienced professionals to support your learning and career development.
- Contribute to team discussions and problem-solving sessions, bringing fresh perspectives to challenges.
Ideal Candidate Profile:
- Recent graduate with a degree in Computer Science, Software Engineering, Information Technology, or a related technical field, OR individuals with equivalent practical experience and a demonstrable passion for software development.
- Basic understanding of programming principles and data structures.
- Strong analytical and problem-solving skills.
- Excellent communication and collaboration abilities, crucial for a remote team setting.
- High level of motivation, self-discipline, and eagerness to learn.
- Ability to work independently and manage time effectively in a remote environment.
- A genuine interest in building software and a desire to grow within the field of technology.
- Familiarity with at least one programming language is a plus, but not strictly required.
- Residency or ability to align with working hours relevant to the team, potentially supporting projects that benefit communities like Muharraq, Muharraq, BH .
This apprenticeship is an exceptional stepping stone for individuals looking to enter the software engineering field. We are committed to providing a supportive and enriching remote learning experience. If you are driven, curious, and ready to build your tech career from the ground up, we encourage you to apply.
Software Engineering Manager, Ubuntu Gaming
Posted 1 day ago
Job Viewed
Job Description
Overview
Canonical is a leading provider of open source software and operating systems to the global enterprise and technology markets. Our platform, Ubuntu, is very widely used in breakthrough enterprise initiatives such as public cloud, data science, AI, engineering innovation and IoT. Our customers include the world's leading public cloud and silicon providers, and industry leaders in many sectors. The company is a pioneer of global distributed collaboration, with 1100+ colleagues in 75+ countries and very few office based roles. Teams meet two to four times yearly in person, in interesting locations around the world, to align on strategy and execution. The company is founder led, profitable and growing.
RoleAs the Software Engineering Manager for Ubuntu Gaming, your mission is to help make gaming on Ubuntu first-class. In this exciting time for Linux gaming, compatibility tools like Proton have matured, but a well-rounded gaming experience goes beyond compatibility. It entails maximising performance, robust and secure anti-cheat mechanisms, full device support, and ease of content creation, sharing and discovery. By collaborating with open-source projects and other partners, you'll contribute to not just Ubuntu but the wider Linux gaming ecosystem.
Location: This role will be based remotely in the Americas or EMEA region.
Responsibilities- Leading your team in optimising and expanding the Ubuntu gaming experience, focusing on the Steam Snap.
- Managing project timelines, balancing feature improvements with deadlines.
- Collaborating with stakeholders to align your team's work with other teams and company objectives.
- Conducting keen-eyed code reviews, focusing on quality, performance, and modern design principles.
- Collaborating with upstream projects like Proton and partners like Unity to enhance Ubuntu's gaming capabilities.
- Working closely with other teams to ensure a cohesive and comprehensive Ubuntu experience.
- Driving performance improvements across a wide range of hardware.
- Engaging actively with the open source and gaming community to gather feedback and collaborate on improvements.
- An undergraduate degree in a technical subject or a compelling narrative about your alternative chosen path.
- Proven ability to collaborate effectively with upstream projects and partners.
- Familiarity and experience with the Linux graphics stack spanning user-space components to low level kernel drivers.
- Exceptional software project management skills, encompassing risk assessment and resource allocation.
- Ability to balance technical leadership with effective team management.
- Excellent written and verbal communication skills for both internal and external interactions.
- Robust planning skills, demonstrated by your capacity to manage multi-cycle improvements.
- Ability to travel twice a year, for company events up to two weeks long.
- A passion for technology and gaming, driving you to work with intelligent, motivated colleagues.
- Initiative in proactively identifying opportunities and solving challenges.
- Curiosity, flexibility, and a strong sense of accountability.
- A focus on soft skills, including passion, enterprise, and self-motivation.
We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognise outstanding performance. In addition to base pay, we offer a performance-driven annual bonus or commission. We provide all team members with additional benefits, which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.
- Distributed work environment with twice-yearly team sprints in person
- Personal learning and development budget of USD 2,000 per year
- Annual compensation review
- Recognition rewards
- Annual holiday leave
- Maternity and paternity leave
- Employee Assistance Programme
- Opportunity to travel to new locations to meet colleagues
- Priority Pass, and travel upgrades for long haul company events
Canonical is a pioneering tech firm at the forefront of the global move to open source. As the company that publishes Ubuntu, one of the most important open source projects and the platform for AI, IoT and the cloud, we are changing the world of software. We recruit on a global basis and set a very high standard for people joining the company. We expect excellence - in order to succeed, we need to be the best at what we do. Most colleagues at Canonical have worked from home since its inception in 2004. Working here is a step into the future, and will challenge you to think differently, work smarter, learn new skills, and raise your game.
Canonical is an equal opportunity employer
We are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products. Whatever your identity, we will give your application fair consideration.
#J-18808-LjbffrUbuntu Enablement - Software Engineering Manager
Posted 5 days ago
Job Viewed
Job Description
Join to apply for the Ubuntu Enablement - Software Engineering Manager role at Canonical
Ubuntu Enablement - Software Engineering Manager1 day ago Be among the first 25 applicants
Join to apply for the Ubuntu Enablement - Software Engineering Manager role at Canonical
Get AI-powered advice on this job and more exclusive features.
Canonical's Device Delivery Team works with tier-1 OEM and ODM customers to pre-load Ubuntu Desktop and Ubuntu Core, bringing Ubuntu directly to millions of users.
As a Software Engineering Manager you will lead and manage the software engineering team to deliver OEM enablement projects. This fast-paced environment requires excellent time management, deep knowledge of the Linux system , low-level debugging, critical thinking, problem-solving skills and management ability.
Key responsibilities
- Recruit, motivate, mentor, and enable your team to succeed in delivering quality products
- Set goals with the team; prioritize tasks, identify and measure team health indicators
- Maximise the results of team members and support their career growth
- Coordinate with project managers, HWE, QA and certification management
- Monitor projects from kickoff to post-mortem and handle escalations
- Communicate, understand, and resolve the technical challenge with OEMs, ODMs, SiPs, IHVs
- Prioritize customer requests globally
- Collaborate with product engineering teams (including Desktop, Foundations, Kernel, and Security)
- Provide leadership for methodologies, strategies, standards, tools, and best practices
- Must be able to travel to the EU, USA, China, and Taiwan; (after covid-19 restrictions lift)
- A Bachelor (or higher) degree in STEM, preferably computer science or software engineering
- Proven track record in technical roles with Linux, preferably Ubuntu or Debian
- Commitment to development and testing methodologies, and maintainable code quality
- Experience with management responsibilities
- Ability to work collaboratively in a team environment
- Ability to be productive in a globally distributed team through self-discipline and self-motivation
- Commitment and energy to deliver on schedule
- Strong English and Chinese language communication skills, both written and verbal
- Making technical decisions for a team as a tech lead
- Software architecture and design experience
- Software development or operations experience with: Ubuntu - kernel and userspace, deb/snap packaging, QEMU/KVM, LXC/LXD, Containers, Python, Go, C, bash, Postgresql, Mongo, Kubernetes, OpenStack, Ceph, AI/ML
- Participation in open-source development projects
- Experience with CI/CD
Canonical believes a diverse workforce enhances our ability to deliver world class software and services which meet the world's computing needs. We are committed to ensuring equal employment opportunities to all qualified individuals. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status.
#stack
Seniority level
- Seniority level Mid-Senior level
- Employment type Full-time
- Job function Engineering and Information Technology
- Industries Software Development
Referrals increase your chances of interviewing at Canonical by 2x
Get notified about new Software Engineering Manager jobs in Manama, Capital Governorate, Bahrain .
Manama, Capital Governorate, Bahrain 2 months ago
Manama, Capital Governorate, Bahrain 4 weeks ago
Software Engineering Manager - Sustaining EngineeringManama, Capital Governorate, Bahrain 2 months ago
Technical Manager - Automotive and IndustrialManama, Capital Governorate, Bahrain 8 months ago
Manama, Capital Governorate, Bahrain 2 months ago
Manama, Capital Governorate, Bahrain 4 months ago
Manama, Capital Governorate, Bahrain 5 months ago
Manama, Capital Governorate, Bahrain 3 months ago
Manama, Capital Governorate, Bahrain 1 month ago
Manama, Capital Governorate, Bahrain 2 months ago
Software Engineering Manager - Cross-platform C++ - MultipassManama, Capital Governorate, Bahrain 1 month ago
Software Engineering Manager - Cross-platform C++ - MultipassManama, Capital Governorate, Bahrain 1 month ago
Software Engineering Manager - Cross-platform C++ - MultipassManama, Capital Governorate, Bahrain 2 months ago
Software Engineering Manager - Desktop and Embedded Linux OptimisationManama, Capital Governorate, Bahrain 4 months ago
Manama, Capital Governorate, Bahrain 1 month ago
Software Engineering Manager, Ubuntu GamingManama, Capital Governorate, Bahrain 2 days ago
Manama, Capital Governorate, Bahrain 2 months ago
Manama, Capital Governorate, Bahrain 1 month ago
Manama, Capital Governorate, Bahrain 2 months ago
Software Engineering Manager - Ubuntu Linux KernelManama, Capital Governorate, Bahrain 1 month ago
Manama, Capital Governorate, Bahrain 1 month ago
Manama, Capital Governorate, Bahrain 3 weeks ago
Systems Integrations Engineering ManagerManama, Capital Governorate, Bahrain 4 days ago
Ubuntu Engineering Delivery and Excellence ManagerManama, Capital Governorate, Bahrain 8 hours ago
Linux Enablement - Software Engineering ManagerManama, Capital Governorate, Bahrain 1 month ago
Engineering Manager - Public Cloud, Python, GolangManama, Capital Governorate, Bahrain 1 month ago
Software Platform Engineering Manager - Ubuntu for Next-Gen SiliconManama, Capital Governorate, Bahrain 2 months ago
Manama, Capital Governorate, Bahrain 6 days ago
Salesforce Engineering Manager, Commercial SystemsManama, Capital Governorate, Bahrain 4 days ago
Engineering Manager for IAM (Identity and Access Management)Manama, Capital Governorate, Bahrain 1 month ago
Manama, Capital Governorate, Bahrain 1 month ago
Manama, Capital Governorate, Bahrain 1 month ago
Manama, Capital Governorate, Bahrain 3 weeks ago
We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.
#J-18808-LjbffrBe The First To Know
About the latest Back end development Jobs in Bahrain !
Software Engineering Manager - Sustaining Engineering
Posted 12 days ago
Job Viewed
Job Description
Overview
Software Engineering Manager - Sustaining Engineering — Canonical is hiring for a globally remote Engineering Manager role within Sustaining Engineering. This role leads a distributed team responsible for improving open source software by resolving defects reported by customers. The team supports a wide range of technologies, from kernel to user-space applications and IaaS platforms, with a focus on Ubuntu and open source software.
The Sustaining Engineering team is customer-focused and contributes to the wider Open Source community. The engineering manager will influence culture, enable technical delivery, and coach team members to grow professionally. Location: This is a globally remote role, unless specified otherwise.
Responsibilities- Manage and lead a distributed team of engineers
- Hire, coach, mentor, provide feedback and career development guidance to your team
- Manage & measure key performance indicators (KPIs), and training
- Support timely delivery of bug fixes, patches, and other technical solutions to address business needs in a variety of technology fields, including but not limited to Ubuntu, OpenStack, Ceph, Kubernetes, Juju & MAAS
- Demonstrate the very best of Canonical in customer interactions
- Set and manage expectations with other engineering teams, senior management, and external stakeholders
- Advocate and advance modern software development practices
- Grow a healthy, collaborative engineering culture in line with the company value
- Collaborate with other teams in the organisation
- Work from home with global travel up to 10% for internal and external events
- Professional software delivery experience using C, C++, Go, Python, or similar
- You are knowledgeable and passionate about software development
- Leadership experience displaying ability to organise and prioritise complex problem resolution and bug fixes
- Experience with version control systems such as git
- Experience with debugging tools such as gdb, crash or other
- Demonstrated strong commitment to testing methodologies and maintainable code quality
- Excellent communication skills in the English language, both verbal and written
- Experience with Linux, with a preference towards Ubuntu
- Experience with Open Source and Open Source Business Models
- People management experience in a support organisation is a strong plus
We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognise outstanding performance. In addition to base pay, we offer a performance-driven annual bonus or commission. We provide all team members with additional benefits, which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.
- Distributed work environment with twice-yearly team sprints in person
- Personal learning and development budget of USD 2,000 per year
- Annual compensation review
- Recognition rewards
- Annual holiday leave
- Maternity and paternity leave
- Employee Assistance Programme
- Opportunity to travel to new locations to meet colleagues
- Priority Pass, and travel upgrades for long haul company events
Canonical is a pioneering tech firm at the forefront of the global move to open source. As the company that publishes Ubuntu, we are changing the world of software. We recruit on a global basis and set a high standard for people joining the company. Most colleagues have worked from home since 2004. Working here challenges you to think differently, work smarter, and raise your game.
Equal OpportunityCanonical is an equal opportunity employer. We are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products. Whatever your identity, we will give your application fair consideration.
#opensource #softwareengineering #cloudcomputing #technicalsupport #go #python #kubernetes #openstack #ceph
#J-18808-LjbffrLinux Enablement - Software Engineering Manager
Posted 14 days ago
Job Viewed
Job Description
Canonical's Device Delivery Team works with tier-1 OEM and ODM customers to pre-load Ubuntu Desktop and Ubuntu Core, bringing Ubuntu directly to millions of users.
As a Software Engineering Manager you will lead and manage the software engineering team to deliver OEM enablement projects. This fast-paced environment requires excellent time management, deep knowledge of the Linux system, low level debugging, critical thinking, problem solving skills, and strong management ability.
Responsibilities- Recruit, motivate, mentor, and enable your team to succeed in delivering quality products
- Set goals with the team; prioritize tasks, identify and measure team health indicators
- Maximise the results of team members and support their career growth
- Coordinate with project managers, HWE, QA and certification management
- Monitor projects from kickoff to post mortem and handle escalations
- Communicate, understand, and resolve the technical challenge with OEMs, ODMs, SiPs, IHVs
- Prioritize customer requests globally
- Collaborate with product engineering teams including Desktop, Foundations, Kernel, and Security
- Provide leadership for methodologies, strategies, standards, tools, and best practices
- Must be able to travel to the EU, USA, China, and Taiwan
- A Bachelor (or higher) degree in STEM, preferably computer science or software engineering
- Proven track record in technical roles with Linux, preferably Ubuntu or Debian
- Commitment to development and testing methodologies, and maintainable code quality
- Experience with management responsibilities
- Ability to work collaboratively in a team environment
- Ability to be productive in a globally distributed team through self-discipline and self-motivation
- Commitment and energy to deliver on schedule
- Strong English and Chinese language communication skills, both written and verbal
- Making technical decisions for a team as a tech lead
- Software architecture and design experience
- Software development or operations experience with: Ubuntu - kernel and userspace, deb/snap packaging, QEMU/KVM, LXC/LXD, Containers, Python, Go, C, bash, Postgresql, Mongo, Kubernetes, OpenStack, Ceph, AI/ML
- Participation in open-source development projects
- Experience with CI/CD
Canonical is an equal opportunity employer. Canonical believes a diverse workforce enhances our ability to deliver world class software and services which meet the world's computing needs. We are committed to ensuring equal employment opportunities to all qualified individuals. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status.
Seniority level- Mid-Senior level
- Full-time
- Engineering and Information Technology
- Software Development
Location: Manama, Capital Governorate, Bahrain
#J-18808-LjbffrJunior Graduate Trainee - Software Engineering
Posted today
Job Viewed
Job Description
Responsibilities:
- Assist in the design, development, and testing of software applications.
- Collaborate with senior engineers on coding tasks and projects.
- Participate in code reviews and quality assurance processes.
- Debug and resolve software defects.
- Learn and apply various programming languages and development tools.
- Document technical specifications and user guides.
- Contribute to team meetings and brainstorming sessions.
- Adhere to company policies and development best practices.
- Actively seek opportunities for learning and skill development.
- Recent graduate with a Bachelor's degree in Computer Science, Software Engineering, or a related technical field.
- Basic understanding of programming concepts and data structures.
- Familiarity with at least one programming language (e.g., Java, Python, C++).
- Strong analytical and problem-solving skills.
- Good communication and teamwork abilities.
- Eagerness to learn and a proactive attitude.