Software Engineers at Google are developers who yearn to create and implement full product life-cycles – not just code solutions. This means you need to have a solid foundation in computer science, you consistently come up with new ideas and you would naturally strive for a deep understanding of your products in order to be able to continually improve upon them. With the bigger picture in mind, you will seek to code elegant systems. Our teams develop massively scalable, distributed software systems and also collaborate on multitudes of smaller projects that have universal appeal – which requires research, awareness, interactivity and asking questions. You bring strong competencies in data structures and algorithms, along with a technical fascination for how stuff fits together. You're motivated to experiment and take chances in order to make a difference in your field, unafraid to stand up for your ideas and eager to embrace change.
As a Google engineer, you will work on problems in a number of areas, including cutting-edge information retrieval algorithms, scalability issues related to dealing with huge amounts of data and a rapidly increasing user population, and developing Google's portfolio of Arab specific products. You'll be comfortable within an Agile software development environment, where engineers each handle all aspects of system architecture, design, coding and testing, without a job hierarchy.
Responsibilities
- Research, conceive and develop software applications to extend and improve on Google's Arab specific product offering.
- Contribute to a wide variety of projects utilizing natural language processing, artificial intelligence, data compression, machine learning and search technologies.
- Collaborate on scalability issues involving access to massive amounts of data and information.
- Solve all problems that come your way.
Requirements
- MS in Computer Science/Computer Engineering or PhD preferred with a strong record of academic achievement.
- Strong C/C++/Java programming skills and several years of software development experience.
- Extensive experience with designing and programming distributed systems.
- Software background and success developing large scale, web-based applications, ideally launched in the Arab market.
- Substantial knowledge of Unix/Linux or Windows environments.
- Interested in finding and solving interesting technical problems from a globally scaled perspective.
- Fluency in English and Arabic (both classical and modern) as well as good knowledge and understanding of Arab culture
Apply Online