260 Object Oriented Programming jobs in Bahrain
Lead Software Development Engineer
Posted today
Job Viewed
Job Description
The Lead Software Development Engineer will be responsible for guiding a team of software engineers, mentoring junior developers, and contributing to the architectural design and implementation of new features and systems. Key responsibilities include writing clean, efficient, and maintainable code, conducting code reviews, collaborating with product managers and designers, and ensuring adherence to coding standards and best practices. You will also play a crucial role in troubleshooting and resolving complex technical issues.
We require a Bachelor's degree in Computer Science, Software Engineering, or a related field, with a minimum of 8 years of professional software development experience, including at least 3 years in a lead or senior technical role. Proficiency in one or more modern programming languages (e.g., Java, Python, C#, JavaScript) and experience with cloud platforms (AWS, Azure, GCP) are essential. A strong understanding of data structures, algorithms, and software design patterns is also required. Excellent communication, problem-solving, and leadership skills are paramount.
Key Responsibilities:
- Lead a team of software engineers in the design, development, and deployment of software applications.
- Architect, design, and implement scalable, robust, and efficient software solutions.
- Write high-quality, maintainable, and testable code.
- Conduct thorough code reviews and provide constructive feedback to team members.
- Collaborate with product management and design teams to define product requirements and specifications.
- Mentor and coach junior engineers, fostering a culture of technical excellence.
- Troubleshoot and resolve complex software defects and production issues.
- Champion best practices in software development, including Agile methodologies and CI/CD pipelines.
- Participate in system design discussions and contribute to technical roadmaps.
- Stay current with emerging technologies and industry trends.
Qualifications:
- Bachelor's degree in Computer Science, Software Engineering, or a related technical field.
- Minimum of 8 years of experience in software development.
- At least 3 years of experience in a technical lead or senior engineering role.
- Strong proficiency in at least one backend programming language (e.g., Java, Python, Node.js).
- Experience with front-end technologies and frameworks (e.g., React, Angular, Vue.js) is a plus.
- Solid understanding of cloud computing platforms (AWS, Azure, GCP).
- Experience with databases (SQL, NoSQL) and distributed systems.
- Knowledge of CI/CD principles and tools.
- Excellent problem-solving, debugging, and analytical skills.
- Strong leadership and communication abilities.
Senior Software Development Engineer
Posted today
Job Viewed
Job Description
Key Responsibilities:
- Design, develop, and implement sophisticated software solutions using various programming languages and technologies.
- Write clean, efficient, well-documented, and maintainable code.
- Collaborate with product managers, designers, and other engineers to define software requirements and features.
- Lead code reviews, providing constructive feedback to ensure code quality and adherence to standards.
- Develop and execute unit tests, integration tests, and end-to-end tests to ensure software reliability.
- Troubleshoot, debug, and resolve software defects and issues.
- Optimize application performance, scalability, and security.
- Contribute to architectural decisions and design discussions.
- Mentor junior engineers and provide technical guidance.
- Participate in all phases of the software development lifecycle, including planning, development, testing, deployment, and maintenance.
- Stay updated with emerging technologies and industry trends, recommending and implementing new tools and approaches.
- Contribute to the continuous improvement of development processes and methodologies.
- Ensure compliance with coding standards and best practices.
- Troubleshoot and resolve complex technical challenges.
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
- Minimum of 7 years of experience in software development.
- Proficiency in one or more programming languages such as Java, Python, C++, C#, or JavaScript.
- Strong understanding of object-oriented programming (OOP) principles and design patterns.
- Experience with cloud platforms (e.g., AWS, Azure, GCP) and containerization technologies (e.g., Docker, Kubernetes) is a plus.
- Familiarity with databases (SQL and NoSQL) and data modeling.
- Experience with agile development methodologies (Scrum, Kanban).
- Strong problem-solving and analytical skills.
- Excellent communication and teamwork abilities.
- Experience with version control systems like Git.
- Knowledge of front-end and back-end development frameworks.
- Demonstrated ability to lead technical initiatives and mentor junior developers.
Lead Software Development Engineer
Posted today
Job Viewed
Job Description
Lead Software Development Engineer
Posted today
Job Viewed
Job Description
Key Responsibilities:
- Lead the design, development, testing, and deployment of software applications.
- Architect robust, scalable, and high-performance software solutions.
- Mentor and guide a team of software engineers, fostering their professional growth.
- Define and enforce coding standards, best practices, and development processes.
- Collaborate with product management and other engineering teams to define requirements and technical specifications.
- Identify and address technical debt and performance bottlenecks.
- Champion code reviews, unit testing, and integration testing to ensure code quality.
- Contribute to the development of CI/CD pipelines and automation strategies.
- Stay current with emerging technologies and industry trends, applying them where appropriate.
- Troubleshoot and resolve complex technical issues.
- Bachelor's or Master's degree in Computer Science, Engineering, or a related field.
- Minimum of 7 years of professional software development experience, with at least 2 years in a technical leadership role.
- Proficiency in one or more modern programming languages (e.g., Java, Python, C#, Go, JavaScript).
- Strong experience with software architecture patterns and design principles.
- Hands-on experience with cloud platforms (AWS, Azure, GCP) and containerization (Docker, Kubernetes).
- Solid understanding of database technologies (SQL, NoSQL) and data modeling.
- Experience with agile development methodologies (Scrum, Kanban).
- Excellent problem-solving, analytical, and debugging skills.
- Strong communication and interpersonal skills, with the ability to effectively collaborate with diverse teams.
- Demonstrated ability to mentor and lead engineering teams.
Lead Software Development Engineer
Posted today
Job Viewed
Job Description
Responsibilities:
- Lead a team of software engineers in the design, development, testing, and deployment of complex software applications.
- Architect scalable, robust, and maintainable software solutions, making key technical decisions.
- Mentor and guide junior developers, providing technical leadership and fostering their professional growth.
- Collaborate with product managers, designers, and stakeholders to understand requirements and translate them into technical specifications.
- Ensure adherence to coding standards, best practices, and established development methodologies (e.g., Agile, Scrum).
- Conduct code reviews, provide constructive feedback, and promote high-quality code throughout the team.
- Troubleshoot and resolve complex technical issues, ensuring the performance and stability of software systems.
- Drive the adoption of new technologies and tools to enhance development processes and product capabilities.
- Participate in the full software development lifecycle, from initial concept to final deployment and maintenance.
- Manage project timelines, resources, and deliverables, ensuring timely completion of milestones.
- Contribute to the continuous improvement of development processes, tools, and infrastructure.
- Stay current with industry trends, emerging technologies, and best practices in software engineering.
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
- Minimum of 8 years of experience in software development, with at least 3 years in a leadership or team lead role.
- Expertise in one or more programming languages (e.g., Java, Python, C++, C#, JavaScript) and associated frameworks.
- Strong understanding of software architecture patterns, data structures, algorithms, and system design.
- Experience with cloud platforms (AWS, Azure, GCP) and microservices architecture is highly desirable.
- Proficiency in database technologies (SQL, NoSQL) and ORM frameworks.
- Experience with CI/CD pipelines and automated testing frameworks.
- Excellent problem-solving, analytical, and debugging skills.
- Strong leadership, communication, and interpersonal skills, with the ability to motivate and guide a team.
- Experience with Agile development methodologies.
- Familiarity with the local tech landscape in Bahrain is a plus.
Software Engineer
Posted 6 days ago
Job Viewed
Job Description
Bachelors in Computer Application (Computers)
Nationality: Any Nationality
Vacancy: 1 Vacancy
Job Description:
This job involves international travel several times a year, usually for one week at a time.
Location: This role will be based remotely in EMEA or the Americas regions.
What your day will look like- Write high quality, rigorously designed Python and Golang software.
- Collaborate proactively with a globally distributed team.
- Debug issues and produce high quality code to fix them.
- Contribute to technical documentation that define best practices for authoring high quality operators.
- Discuss ideas and collaborate on finding good solutions.
- Develop and maintain software for delivery, operations and life-cycle management of Ceph storage.
- You have a Bachelor’s or equivalent in Computer Science, STEM or similar degree.
- You have experience with writing modern, maintainable Python.
- You have experience with Ceph storage.
- You love technology and working with brilliant people.
- You are curious, flexible, articulate, and accountable.
- You value soft skills and are passionate, enterprising, thoughtful, and self-motivated.
- You have interest and experience with two or more of the following: Linux, Kubernetes, Public cloud, OpenStack, LXC/LXD, Python, Go, Debian packaging.
- An exceptional academic track record from both high school and preferably university.
- Willingness to travel up to 4 times a year for internal events.
- Experience operating Ceph clusters in production.
- Experience with open source distributed storage such as Gluster, Minio, Mayastor or similar.
Company Industry: IT - Software Services
Department / Functional Area: IT Software
Keywords: Software Engineer
#J-18808-LjbffrSenior Software Engineer - Backend Development
Posted today
Job Viewed
Job Description
Be The First To Know
About the latest Object oriented programming Jobs in Bahrain !
Associate, Software Engineer
Posted 5 days ago
Job Viewed
Job Description
Established in 1986, 01 Systems is one of the first Software providers in the Middle East bringing over 30+ years of experience delivering innovative solutions. With over 300 customers in over 90 countries, 01 Systems provides state of the art solutions and services – For both, the financial and the non-financial sectors – in the areas of Digital Transformation, Signature Management, Document Management, and Business Process Management.
Using leading edge technologies, robust security and proven competency, our products and services are used to effectively mitigate business and operational risks. Over the years we have improved and enhanced our products through continued cooperation and interaction with our customers to ensure that we deliver a positive customer service and to keep our clients satisfied.
Our team shares a passion of success and a firm commitment to create an inspiring work environment for every employee. Our culture promotes an atmosphere of thoughtfulness, moments of laughter, and an appreciation of others as well as a strong work ethic and technical skills.
Job Description
We are seeking a highly skilled and experienced Full Stack Software Developer with a strong background in Web UI development and implementing .NET-based web applications . The ideal candidate will have hands-on experience with JavaScript , CSS , ASP.Net MVC , Web API , cross-browser compatibility fixes, and solid knowledge of database querying and integration. You will be responsible for building responsive, robust, and scalable web applications that offer seamless user experiences across all major browsers (and some legacy browsers like Internet Explorer 11) and devices.
Duties and Responsibilities:
- Design and develop responsive Web UIs using HTML5, CSS, JavaScript, and modern UI frameworks.
- Build and maintain ASP.Net MVC applications with seamless integration between front-end and back-end.
- Develop and consume RESTful APIs using ASP.Net Web API.
- Implement secure, high-performing, and scalable .NET-based web solutions.
- Collaborate with cross-functional teams including UI/UX designers, QA engineers, and DevOps.
- Design and interact with relational databases; write efficient SQL queries and work with stored procedures.
- Ensure cross-browser compatibility and responsive design for desktop and mobile platforms.
- Follow best practices for software development, including code reviews, unit testing, and documentation.
- Continuously improve application performance and maintainability.
- Mentor junior team members and contribute to technical design discussions.
- Bachelor’s degree in Computer Science, Information Technology, Computer Engineering, or another related field.
- Overall 8+ years of professional experience in software development, and 5+ years with extensive focus on Web UI and .NET-based applications.
- Strong proficiency in JavaScript, HTML5, CSS (including Flexbox, Grid, etc.).
- Expertise in ASP.Net MVC and Web API development.
- Experience developing responsive and cross-browser compatible user interfaces especially with Internet Explorer 11.
- Thorough knowledge of ECMA 5/6 standards.
- Proficient in working with relational databases (e.g., SQL Server, PostgreSQL), including writing queries, stored procedures, and optimization.
- Knowledge of web application security and performance optimization.
- Familiarity with version control systems such as Git, or Bit Bucket.
- Strong analytical, debugging, and troubleshooting skills.
- Excellent communication and teamwork abilities.
- Experience with JavaScript frameworks like Bootstrap, Knockout, JQuery.
- Experience with modern JavaScript frameworks (e.g., React, Angular, Vue.js).
- Experience with C# language and Dot Net.
- Familiarity with containerization concepts, hands-on experience is a plus.
- Knowledge of Entity Framework or other ORM tools.
- Knowledge of Unit Testing with frameworks like XUnit, NUnit, MSTest, etc.
- Understanding of Agile methodologies (Scrum, Kanban).
- High levels of initiative, along with the ability to work with minimal oversight, and capability to multitask.
- A team player, with willingness to assist other team members through brainstorming, review, mentorship, or knowledge-sharing to improve the performance of the team.
- Ability to understand and articulate good architectural and design principles.
- Strong written and verbal communication skills, including the ability to present complex information in a succinct and easy to understand manner.
- Experience working in an agile development environment.
- Drive for continuous learning and self-improvement.
- Familiarity with continuous integration and deployment.
- Experience developing and deploying on major cloud services platforms (IAAS, PAAS) such as AWS and Azure.
- Competitive salary.
- Monthly transport allowance.
- Bahrain visa Sponsorship for you and your family.
- Sponsored flight back to Home Country once per annum for you and your family.
- Medical Insurance for you and your Family.
- A collaborative and innovative team environment.
- Opportunities for learning, development, and career advancement.
HPC Software Engineer
Posted 5 days ago
Job Viewed
Job Description
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 1000+ colleagues in 70+ 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.
HPC is an important and technically challenging compute domain, with specialised tooling and a very high expectation of precision, efficiency and automation. This role is for a software engineer to join our HPC team to deliver an outstanding HPC experience - from bare metal to public cloud - as part of the broader Ubuntu platform. We are looking for a range of skills and experience, and will work on everything from the kernel to Debian packaging, but the heart of our effort will be Python software development for automation of key software in the HPC sphere. Our focus is on delivering a world class experience for the operation of the HPC cluster itself.
You will be part of the team that delivers charms that deploy and manage the HPC cluster and provide HPC software packages.
To succeed in this application you must be outstanding at maths and sciences, have built high quality software, have learned about open source ideally by working on it directly, and be looking for an engineering role with a company that makes mission-critical products for the global market. You should also be familiar with the open source environment, and want to build products in partnership with a community. Ideally, you should have some experience of high performance computing environments and a desire to unlock HPC for the world.
For this role you must have experience with Python. Experience in HPC environments is a strong advantage. Familiarity with HPC hardware and software is also a strong advantage - delivering great experiences with Infiniband, RDMA, CUDA, MPI, Slurm, Lustre, Singularity and related technologies will be central to this team's work. It will also be advantageous to have experience with Docker image design and operations, and public cloud image design and operations.
Location: This role will be based remotely in EMEA or the Americas regions
What your day will look like
- Write high quality, rigorously designed Python software
- Collaborate proactively with a globally distributed team
- Debug issues and produce high quality code to fix them
- Contribute to technical documentation that define best practices for authoring high quality operators
- Discuss ideas and collaborate on finding good solutions
- You have a Bachelor's or equivalent in Computer Science, STEM or similar degree
- You have experience with writing modern, maintainable Python
- You love technology and working with brilliant people
- You are curious, flexible, articulate, and accountable
- You value soft skills and are passionate, enterprising, thoughtful, and self-motivated
- You have interest and experience with two or more of the following: Linux, Kubernetes, Public cloud, OpenStack, LXC/LXD, Python, Go, Debian packaging
- An exceptional academic track record from both high school and preferably university
- Willingness to travel up to 4 times a year for internal events
- Experience operating HPC clusters in production
- Experiences with Infiniband, RDMA, CUDA, MPI, Slurm, Lustre, and/or Singularity
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. 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 from your team and others
- Priority Pass for travel and travel upgrades for long haul company events
Canonical is a pioneering tech firm that is 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 on a daily basis. 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.
Canonical has been a remote-first company since its inception in 2004. Work at Canonical is a step into the future, and will challenge you to think differently, work smarter, learn new skills, and raise your game. Canonical provides a unique window into the world of 21st-century digital business.
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-Ljbffr
Security Software Engineer
Posted 6 days ago
Job Viewed
Job Description
This is a general track for security-focused engineering in every team at Canonical, across all levels of seniority. Apply here if you are already an exceptional security-focused software engineer.
Most product engineering teams at Canonical include one or two spaces for dedicated security-oriented software engineers. Their role is to challenge the entire team to think more deeply about security. They contribute to the product as engineers too, but their primary focus is to improve security through state of the art practices - from table-top threat model exercises to architecture reviews, from extended security testing with fuzzers and static analysis tools to external security analyst liaison.
We also build a number of products that are entirely motivated by security technology and requirements, such as our AppArmor kernel investments and our hardening, compliance and certification toolkits for Ubuntu.
As the publisher of Ubuntu we also handle long-term security response and hardening for the entire operating system and open source universe. Working with tens of thousands of upstreams means that we need to be fluent in every major programming language, and design, build and adopt sophisticated tools that enable us to work at scale and speed with confidence.
These roles encompass all aspects of product security, including feature development, vulnerability response, proactive security and open source community participation. All security roles interact closely with many of the other Canonical engineering and development teams, Canonical customers and our partners across the open source community.
Location: We have open roles for security specialist software engineers in every timezone.
What you'll do
Security roles might tackle any of the following:
- Define, implement and document new security features
- Lead security-oriented thinking in a product engineering team
- Analyze, fix, and test vulnerabilities in Canonical and open source Software
- Contribute to Ubuntu and upstream projects to benefit the community
- Audit and analyze source code for vulnerabilities
- Integrate new tools in our security infrastructure, pipelines and processes
- Achieve and retain various security certifications
- Extend and enhance Linux cryptographic components - specifically with modules such as OpenSSL/Libgcrypt - with the features and functionality required for country-specific compliance such as FIPS and CC certification
- Work with external partners to develop CIS benchmarks
- Design and develop hardening automation for Ubuntu
- Monitor the security industry for new developments
- Develop, test and maintain new software capabilities
- Provide guidance and support to other engineering teams
- An exceptional academic track record from both high school and university
- Undergraduate degree in Computer Science or STEM, or a compelling narrative about your alternative path
- Drive and a track record of going above-and-beyond expectations
- A thorough understanding of the common categories of security vulnerabilities
- Modern engineering techniques to find and fix them
- Familiarity with open source development tools and methodologies
- Skill in one or more of C, Python, Go, Rust, Java, Ruby or PHP
- Experience as a security champion
- Experience driving security within a wider SDLC process
- Professional written and spoken English
- Experience with Linux (Debian or Ubuntu preferred)
- Excellent interpersonal skills, curiosity, flexibility, and accountability
- Passion, thoughtfulness, and self-motivation
- Excellent communication and presentation skills
- Result-oriented, with a personal drive to meet commitments
- Ability to travel twice a year, for company events up to two weeks each
- Clear and effective communication with the team and Ubuntu community members
- Experience working with Linux Kernel
- Security Certification experience and knowledge in FIPS and/or CC
- Experience with OVAL (Open Vulnerability Assessment Language)
- Knowledge of and familiarity with low-level Linux cryptography APIs
- Demonstrated high learning ability
- Performance engineering experience
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. 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 on a daily basis. 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. Canonical has been a remote-first company 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-Ljbffr