Java (nice to have)
Google Hardware Team - IOT devices
Google's software engineers develop the next-generation technologies that change how billions of users connect, explore, and interact with information and one another.
Our products need to handle information at a massive scale, and extend well beyond web search. We're looking for engineers who bring fresh ideas from all areas, including information retrieval, distributed computing, large-scale system design, networking and data storage, security, artificial intelligence, natural language processing, UI design and mobile;
the list goes on and is growing every day. As a software engineer, you will work on a specific project critical to Google’s needs with opportunities to switch teams and projects as you and our fast-paced business grow and evolve.
We need our engineers to be versatile, display leadership qualities and be enthusiastic to take on new problems across the full-stack as we continue to push technology forward.
Full stack desired but not required. The backend requirements are the same as Java BE, the additional requirement is for the candidate to have C++ experience with a preference for Java but Java experience is not a requirement.
Distributed / multi threaded computing (required),
C++ (required), microservices
Advanced knowledge of Computer Science fundamentals in OOAD, design patterns, data structures, and algorithms
Experience with microservice design and development
Experience with standard development tools (e.g. Git, JIRA)
Experience working in an Agile / Scrum development process
Experience working closely with engineers and software cultures
Developing Restful Web Services using Micro services architecture
Designing and developing different API's using C++
Minimum qualifications :
Bachelor's degree in Computer Science or equivalent practical experience.
4 years of relevant work experience.
Experience with software development with one or more general programming languages (e.g. Java, C / C++)
Preferred qualifications :
Master’s, PhD degree, further education or equivalent practical experience in Engineering, Computer Science or other technical related field.
Experience with one or more of the following areas : Server Backend Distributed and Parallel Systems, Full Stack Development (frontend and backend), Scalable Enterprise Platforms and Applications, Application Security and Incident Management, Machine Learning, Information Retrieval or Natural language processing.
Development experience with Unix / Linux.
Ability to learn other coding languages as needed.
Demonstrated ability to share knowledge via formal mentoring, reviewing code, reviewing design documents, providing technical talks, teaching classes, or as a consultant on projects
Design, develop, test, deploy, maintain, and improve backend and microservices software.
Manage individual priorities, deadlines, and deliverables.
Write client-side code for web-based applications, create fast, easy-to-use, high volume production applications, and develop prototypes quickly.
Build the libraries and frameworks that support large, complex web applications.
Contribute to engineering efforts from planning and organization to execution and delivery to solve complex engineering problems.
Working with IOT Devices (Provisioning, management) is a plus
Excellent problem-solving and analytical skills.
Comfortable onsite working area with the possibility of hybrid. Сareer opportunities. Sick leaves and vacation.
Locations : Poland (Krakow)
Poland Krakow Building (PL-KRK-RYN)
Rynek Glowny 12, II floor Krakow, MA 31-042, Poland