81 IT Companies jobs in Bahrain
Software Development Intern
Posted today
Job Viewed
Job Description
As a Software Development Intern, you will work alongside experienced developers, learning about the software development lifecycle, participating in coding, testing, and debugging activities, and gaining exposure to modern development methodologies. You will have the chance to apply your academic knowledge to practical challenges and contribute to the creation of high-quality software products. This internship is designed to provide a comprehensive learning experience and potential career pathways.
Key Responsibilities:
- Assist in the design, development, and implementation of software applications.
- Write clean, efficient, and well-documented code in relevant programming languages.
- Participate in code reviews and contribute to improving code quality.
- Collaborate with senior developers and cross-functional teams to understand project requirements.
- Test software components and systems to identify and resolve bugs.
- Assist in the development of user interfaces and user experience elements.
- Learn and apply principles of software architecture and design.
- Contribute to the creation of technical documentation and user guides.
- Support the deployment and maintenance of software applications.
- Research and evaluate new technologies and tools to improve development processes.
- Participate in agile development ceremonies, such as daily stand-ups and sprint planning.
- Troubleshoot and debug issues reported by QA or end-users.
- Work on assigned tasks within project timelines.
- Develop a foundational understanding of database management and querying.
- Engage in continuous learning to enhance programming skills and knowledge.
Qualifications:
- Currently pursuing or recently completed a Bachelor's degree in Computer Science, Software Engineering, or a related field.
- Foundational knowledge of programming languages such as Java, Python, C++, or JavaScript.
- Understanding of data structures, algorithms, and object-oriented programming concepts.
- Familiarity with version control systems, such as Git.
- Basic knowledge of software development methodologies (e.g., Agile, Scrum).
- Strong analytical and problem-solving skills.
- Excellent communication and teamwork abilities.
- Eagerness to learn and a proactive approach to tackling challenges.
- Ability to work independently and manage time effectively.
- Passion for technology and software development.
- Experience with web development frameworks (e.g., React, Angular, Node.js) is a plus.
- Knowledge of cloud platforms (AWS, Azure, GCP) is beneficial.
- Strong attention to detail and commitment to producing quality work.
- Enthusiasm for collaborating with experienced professionals.
This internship provides a valuable opportunity to build your professional network and gain hands-on experience in a fast-growing industry.
Software Development Apprentice
Posted today
Job Viewed
Job Description
Responsibilities:
- Assist experienced developers in coding and debugging software applications.
- Learn and apply programming languages and development tools.
- Participate in the testing and quality assurance of software.
- Contribute to the creation of technical documentation.
- Collaborate with team members in an agile development environment.
- Learn about software development lifecycle and best practices.
- Shadow senior developers and gain practical experience.
- Support the maintenance and enhancement of existing software.
- Participate in team meetings and training sessions.
- Develop foundational skills in software design and architecture.
- High school diploma or equivalent.
- Strong interest and passion for software development and technology.
- Good problem-solving and logical thinking skills.
- Basic understanding of computer science concepts is a plus.
- Willingness to learn and adapt to new technologies.
- Good communication and interpersonal skills.
- Ability to work effectively in a team environment.
- Motivation to complete an apprenticeship program and pursue a career in software development.
- Previous exposure to coding (personal projects, online courses) is beneficial.
Senior Software Development Manager
Posted today
Job Viewed
Job Description
Responsibilities:
- Lead and manage multiple software development teams, fostering a high-performance culture.
- Oversee the entire software development lifecycle (SDLC) from conception to deployment.
- Define and drive technical strategy, architecture, and best practices for software development.
- Collaborate with product management to define product roadmaps and prioritize features.
- Ensure the timely and successful delivery of high-quality software products.
- Recruit, mentor, and develop talented software engineers and technical leads.
- Implement and improve agile development methodologies (Scrum, Kanban).
- Drive adoption of DevOps practices, CI/CD pipelines, and automated testing.
- Ensure the scalability, reliability, and security of software applications.
- Manage project timelines, resources, and budgets effectively.
- Conduct performance reviews and provide constructive feedback to team members.
- Troubleshoot and resolve complex technical issues.
- Stay current with emerging technologies and industry trends in software development.
- Communicate technical plans and progress to stakeholders at all levels.
Graduate Software Development Engineer
Posted today
Job Viewed
Job Description
Responsibilities:
- Assist senior engineers in designing, developing, testing, and deploying software applications.
- Write clean, efficient, and well-documented code in one or more programming languages such as Java, Python, C++, or JavaScript.
- Participate in code reviews to ensure code quality and adherence to standards.
- Debug and resolve software defects and issues identified during testing.
- Contribute to the development of new features and enhancements for existing products.
- Collaborate with cross-functional teams, including product managers and designers, to understand project requirements.
- Learn and apply best practices in software development, version control (e.g., Git), and agile methodologies.
- Document technical designs, solutions, and processes.
- Participate in team meetings and contribute ideas for process improvement.
- Gain exposure to various development tools, frameworks, and technologies used by the company.
- Engage in self-study to continuously improve technical skills and knowledge.
- Contribute to the overall success of the software development team.
- Recent graduate with a Bachelor’s or Master’s degree in Computer Science, Software Engineering, or a related technical field.
- Strong foundation in computer science fundamentals, including data structures, algorithms, and object-oriented programming.
- Proficiency in at least one programming language (e.g., Java, Python, C++, JavaScript).
- Familiarity with software development lifecycle (SDLC) and agile methodologies.
- Basic understanding of database concepts and SQL.
- Exposure to version control systems like Git is a plus.
- Excellent problem-solving and analytical skills.
- Strong communication and teamwork abilities.
- Eagerness to learn and adapt to new technologies.
- Must be eligible to work in the specified location.
- Previous internship or project experience in software development is highly valued.
Senior Software Development Lead
Posted today
Job Viewed
Job Description
The ideal candidate will have a strong background in full-stack development and expertise in multiple programming languages and frameworks. You should possess excellent architectural design skills and a deep understanding of software development lifecycle (SDLC). Experience with cloud platforms (e.g., AWS, Azure) and DevOps practices is highly desirable. The ability to translate business requirements into technical specifications and lead the team through complex projects from inception to deployment is essential. Strong communication and interpersonal skills are needed to effectively collaborate with stakeholders across different departments, including product management, QA, and operations. This is an excellent opportunity to shape the future of software development within a dynamic and forward-thinking company.
Responsibilities:
- Lead and mentor a team of software engineers.
- Architect, design, and develop scalable and robust software solutions.
- Oversee the full software development lifecycle (SDLC).
- Define technical standards and best practices for the development team.
- Conduct code reviews to ensure code quality and adherence to standards.
- Collaborate with product managers to define project requirements.
- Drive the adoption of Agile/Scrum methodologies.
- Ensure the performance, quality, and responsiveness of applications.
- Manage project timelines and deliverables.
- Troubleshoot and resolve complex technical issues.
- Stay abreast of new technologies and industry trends.
- Bachelor's degree in Computer Science, Engineering, or a related field. Master's degree is a plus.
- Minimum of 8 years of experience in software development.
- Proven experience in a lead or supervisory role within a software development team.
- Expertise in one or more programming languages (e.g., Java, Python, C#, JavaScript).
- Strong knowledge of front-end and back-end development frameworks.
- Experience with cloud computing platforms (AWS, Azure, GCP).
- Familiarity with DevOps principles and CI/CD pipelines.
- Excellent architectural design and problem-solving skills.
- Strong leadership, communication, and interpersonal skills.
- Experience with Agile development methodologies.
Software Development Engineer I
Posted today
Job Viewed
Job Description
Senior Software Development Lead
Posted today
Job Viewed
Job Description
Key responsibilities include:
- Leading and mentoring a team of software engineers throughout the software development lifecycle (SDLC).
- Designing and implementing scalable, high-performance, and maintainable software architectures.
- Overseeing the development of robust backend services and APIs.
- Collaborating with product managers and stakeholders to define project requirements and technical specifications.
- Ensuring adherence to coding standards, best practices, and security protocols.
- Conducting code reviews and providing constructive feedback to team members.
- Identifying and resolving technical challenges and bottlenecks.
- Driving the adoption of new technologies and development methodologies.
- Managing project timelines, resource allocation, and task delegation within the development team.
- Contributing to the development of critical features and components.
Qualifications:
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
- Minimum of 7-10 years of experience in software development, with at least 2-3 years in a leadership or lead role.
- Expertise in one or more programming languages (e.g., Python, Java, C++, JavaScript).
- Strong experience with modern web frameworks (e.g., React, Angular, Node.js) and backend technologies.
- Proficiency in database technologies (e.g., SQL, NoSQL) and cloud platforms (e.g., AWS, Azure, GCP).
- Solid understanding of software architecture patterns, microservices, and API design.
- Experience with Agile development methodologies (Scrum, Kanban).
- Excellent leadership, communication, and interpersonal skills.
- Proven ability to mentor and guide junior engineers.
- Strong problem-solving and debugging skills.
- Experience with CI/CD pipelines and DevOps practices is a plus.
Be The First To Know
About the latest It companies Jobs in Bahrain !
Lead Software Development Manager
Posted today
Job Viewed
Job Description
Responsibilities:
- Lead, manage, and mentor a team of software engineers, fostering a high-performance culture.
- Oversee the design, development, testing, and deployment of software applications.
- Define and implement software development processes and best practices.
- Collaborate with product managers, designers, and stakeholders to define project requirements and roadmaps.
- Ensure the quality, scalability, and performance of all software solutions.
- Manage project timelines, resources, and budgets effectively.
- Conduct code reviews and provide constructive feedback to team members.
- Identify and mitigate technical risks and challenges.
- Stay current with emerging technologies and software development trends.
- Promote a culture of continuous improvement and innovation within the development team.
- Drive the adoption of agile methodologies and efficient development practices.
- Conduct performance reviews and support the professional growth of team members.
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related technical field.
- Minimum of 8 years of experience in software development, with at least 3 years in a leadership or management role.
- Proven experience managing software development teams and projects.
- Strong understanding of software development methodologies (Agile, Scrum, Kanban).
- Proficiency in multiple programming languages (e.g., Java, Python, C++, JavaScript).
- Experience with cloud platforms (AWS, Azure, GCP) and microservices architecture.
- Excellent understanding of the full software development lifecycle.
- Strong leadership, communication, and interpersonal skills.
- Ability to make sound technical decisions and guide the team effectively.
- Experience with CI/CD pipelines and DevOps practices is highly desirable.
- Strong problem-solving and analytical abilities.
Senior Software Development Manager
Posted today
Job Viewed
Job Description
Senior Software Development Lead
Posted today
Job Viewed
Job Description
Responsibilities:
- Lead and mentor a team of software engineers, fostering a collaborative and productive environment.
- Architect, design, and develop scalable, high-performance software applications.
- Oversee the entire software development lifecycle, from requirements gathering to deployment and maintenance.
- Define coding standards, best practices, and ensure code quality through reviews and testing.
- Collaborate with product managers, designers, and other stakeholders to translate business requirements into technical solutions.
- Identify and implement new technologies and methodologies to improve development processes.
- Troubleshoot and resolve complex technical issues.
- Contribute to strategic planning and roadmapping for future software development.
- Conduct performance evaluations and provide career development guidance to team members.
- Ensure the security and reliability of all software systems.
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
- Minimum of 7 years of experience in software development, with at least 2 years in a leadership role.
- Expertise in one or more programming languages such as Java, Python, C++, or JavaScript.
- Strong understanding of software architecture patterns, data structures, and algorithms.
- Experience with cloud platforms (AWS, Azure, GCP) and microservices architecture.
- Proficiency in Agile development methodologies (Scrum, Kanban).
- Excellent problem-solving, analytical, and leadership skills.
- Experience with CI/CD pipelines and DevOps practices.
- Strong communication and interpersonal skills, with the ability to articulate technical concepts clearly.