Category Archives: Google Developers Blog

News and insights on Google platforms, tools and events

Google Cloud projects: Tips and best practices

By Peter Jacobsen, Google Technical Writer

Least privilege

Always apply the principle of least privilege when you provide access to Google Cloud resources. The best practice is to grant only the most limited predefined roles or custom roles that meet your needs.

For more information, see Least privilege.

Google Cloud billing alerts

Set up Google Cloud billing alerts for your projects at specified intervals for early warning of usage patterns, and to help reduce costs.

For more information, see Create, edit, or delete budgets and budget alerts.

API quotas

API quotas protect the Google infrastructure from excessive API requests. Traffic is blocked when the level of requests reaches the daily API quota level or a per-user rate limit.

To avoid disruptions due to an API quota level that's too low, set the quota for your app or API appropriately. Note that the lead time for the increase of quotas is one month.

For more information, see API Quotas.

Checklist for production-ready enterprise workloads

Use this checklist to set up scalable, production-ready enterprise workloads. Note that the checklist assumes that you're an administrator with control over your company's Google Cloud resources.

For more information, see Google Cloud setup checklist.

Google Workspace domain ownership of projects

Google Workspace domain ownership of your group's project lets you tie it into a Google Workspace account, rather than have it tied to a personal account.

For more information, see Best practices for planning accounts and organizations.

Identity-Aware Proxy (IAP)

IAP lets you hide your website until you’re ready for people to see it. IAP establishes a central authorization layer for apps accessed by HTTPS, so you can adopt an app-level access-control model rather than use network-level firewalls. When IAP protects an app or resource, only users who have the correct Identity and Access Management (IAM) role can access it through the proxy.

For more information, see Identity-Aware Proxy overview.

Cloud Build

Cloud Build can import source code from a variety of repositories or cloud storage spaces, execute a build to your specifications, and produce artifacts, such as Docker containers or Java archives. You can configure builds to fetch dependencies and run unit tests, static analyzes, and integration tests.

For more information, see Cloud Build.

Useful Google Cloud tools and services

Google Cloud has many tools and services that can help you create and keep your projects in sync, such as:

  • Cloud Build: executes your builds on Google Cloud infrastructure.
  • Google Cloud Deploy: deploys releases continuously to Google Kubernetes Engine.
  • Container Registry: provides a single place for your team to manage Docker images and control access.
  • Artifact Registry: provides a single place for your organization to manage container images and language packages, such as Maven and npm.
  • Cloud Source Repositories: provides a single place for your team to store, manage, and track code.
  • Cloud Deployment Manager: automates the creation and management of Google Cloud resources.

Google Groups for management across projects

Google Groups can help you manage teams across projects, which includes the setup of the group access through IAM. Groups such as project teams, departments, or classmates can communicate and collaborate with Google Groups. If you want to invite a group to an event or share documents with a group, you can send a single email to everyone in the group.

For more information about how to set up a group, see Google Groups.

Watch for Google suggestions

Google provides many useful tips and suggestions for best practices within the context of your work. For example, if you go to a project that you haven't used in a while, you may get a warning like this one:

If you click the link, you see a page that tells you how to apply role recommendations to help you enforce the principle of least privilege to ensure that principals have only the permissions that they actually need. Google offers many suggestions for best practices such as this one, so watch for them as you work.

Here's an example of a useful in-console recommendation that you might see from your billing page:

If you click Learn more, you arrive at a Cloud billing checklist, which is part of a longer billing-specific checklist that you might find useful.

Here's another example found on the API & Services page:

If you click Edit settings, you arrive on a page where you can change the settings.

GDSC India’s Android Study Jams Boost Student Career Outcomes

Posted by Tanvi Somani, Program Manager - Regional Lead, Google Developer Student Clubs, Google Developer Relations India

photo of green Android logo

Android Study Jams, hosted by Google Developer Student Clubs (GDSC) chapters across the globe and in India, leverage peer-to-peer teaching to train a new generation of student Android developers. The program aims to help student developers build their careers and put them on a solid path towards earning an Associate Android Developers Certification. Three students from the GDSC community in India, Amsavarthan Lv, Rishi Balamurugan, and Sanjay S. went the extra kilometer to earn their certifications.

Meet the newly certified Android developers

“From childhood onward, I was inspired by my brother to learn to program. He’s also a certified Android developer,” says Amsavarthan Lv, the GDSC Lead at the Chennai Institute of Technology and a full-stack web and mobile developer. “I used to be amazed by seeing the code and information on his output screen. Over time, I started exploring tech, and I chose my career as a full-stack web and mobile developer.”

Rishi Balamurugan’s father introduced him to coding, and he eventually built an application for his dad's company. A member of GDSC Shiv Nadar University from Bangalore, Rishi was the facilitator for the Android Study Jams on his campus.

Sanjay S. mused he didn’t like technology at first, but a friend introduced him to Android with Java through an online course, which changed the course of his career. Now, he’s a pre-final-year engineering student, specializing in Android and full-stack development, at Sri Ramakrishna Engineering College - Coimbatore Tamil Nadu.

Photo of man in red shirt named Amsavarthan Lv Photo of man in plaid blue shirt named  Rishi Balamurugan Photo of man in black and white checkered shirt named Sanjay S

(Pictured from left to right) Amsavarthan Lv, Rishi Balamurugan, and Sanjay S. each recently earned a certification in Android Development.

Leveling up Android development skills

These three newly certified Android developers completed the program with comprehensive Android development skills and the confidence and preparation to build a career in Android development.

“As an Android developer, I have taken several webinars and workshops through GDSC and other campus programs,” Amsavarthan says. “The course and the content provided in Android Study Jams was a piece of cake for getting started as an Android developer. It had everything from creating basic layouts to implementing a local database.”

“After learning the fundamentals, I heard about this certification and started to prepare,” says Sanjay. “I thought this would help me stand out in my career and boost my confidence.”

After receiving mentorship from the Google Play team on Google Play and Play Academy, the students built simple applications and learned what's involved to deploy to the Google Play Store.

  • YouTube Thumbnail Search App: A solution for users who just want to browse thumbnails and not play the videos shown in the YouTube search list, the application leverages LiveData and ViewModel to handle the UI Logic. Screenshots
  • SimplDo: This application keeps track of your todo list, with options to add, check, update, and delete items. List items are displayed using Recycler view and stored using View Model and Live Data; Jetpack navigation is used to handle navigation between the fragments and pass data. Screenshots
  • Alert'em: An emergency alerter with local helpline numbers, this app’s “Emergency Alerting System” sends an SMS containing the recent call log of the user to their emergency contacts. It uses a flexible constraint layout and a Jetpack Navigation to switch between different screens. Screenshots

Building confidence and career readiness

Open laptop with live Android Study Jam session on the screen

Over 65.5 thousand developers participated in 800+ Android Study Jams in India and emerged with new skills from the Android Basics in Kotlin Course and Appscale academy sessions. Program facilitators could earn Google Developer Profile badges and become Android Educators.

“Android Study Jams helped me to try out new libraries such as Jetpack, DataStore, and WorkManager and showed me how to work in a step-by-step manner,” says Sanjay. “It was organized in such a way that even a beginner can start learning Android easily.”

Amsavarthan, Rishi, and Sanjay took the initiative to gain the skills to pursue employment as full-time Android developers after graduation, and as the program continues, more Android Study Jams participants will be on their way to bright futures.

How to join a Google Developer Student Club and lead or attend an Android Study Jam:

  • If you’re a university student interested in opportunities to learn about Google developer products, including Android Study Jams, sign up for a Google Developer Student Club near you here.
  • Want to make a similar impact on your campus? Sign up to become a Google Developer Student Clubs Lead here.

Google Developer Student Club 2022 Lead applications are open!

Posted by Erica Hanson, Global Program Manager, Google Developer Student Clubs

Image that says become a leader at your university with a photo of students smiling in the top right hand corner

Hey, student developers! If you’re passionate about programming and are ready to use your technology skills to help your community, then you should become a Google Developer Student Clubs Lead!

The application form for the upcoming 2022-2023 academic year is NOW OPEN. Get started at goo.gle/gdsc-leads.

Want to know more? Learn more about the program below.

What are Google Developer Student Clubs?

Google Developer Student Clubs (GDSC) are university based community groups for students interested in Google developer technologies. With clubs hosted in 110+ countries around the world, students from undergraduate and graduate programs with an interest in leading a community are welcome. Together, students learn the latest in Machine Learning, Android App Development, Google Cloud Platform, Flutter, and so much more.

By joining a GDSC, students grow their knowledge in a peer-to-peer learning environment and put theory to practice by building solutions for local businesses and their community.

How will I improve my skills?

As a Google Developer Student Club Lead you will have the chance to…

  • Gain mentorship from Google.
  • Join a global community of leaders.
  • Practice by sharing your skills.
  • Help students grow.
  • Build solutions for real life problems.

How can I find a Google Developer Student Club near me?

Google Developer Student Clubs are now in 110+ countries with 1500+ groups. Find a club near you or learn how to start your own, here.

When do I need to submit the Application form?

We encourage students to submit their forms as soon as possible. You can learn more about your region’s application deadlines, here. Make sure to learn more about our program criteria.

Get Started

From working to solve the United Nations Sustainable Development Goals to combating climate issues, Google Developer Student Club leads are learning valuable coding skills while making a true difference.

As Leads from clubs around the world put it:

  • Lead from Indonesia - “The best way to learn to be a leader is to be a leader itself, and being a GDSC Lead is the best way to do that.”
  • Lead from United Kingdom - “It's an experience that challenges you to critically think about some decisions and come up with creative and innovative new approaches for things that you thought you know about leadership.”
  • Lead from Uganda - “Becoming a GDSC lead has been an amazing opportunity to learn, engage and meet different new people in my life. It was instrumental in my career development.”

We can’t wait to see what our next group of Google Developer Student Club leads will accomplish this year. Join the fun and get started, here.

*Google Developer Student Clubs are student-led independent organizations, and their presence does not indicate a relationship between Google and the students' universities.

Android GDE Maryam Alhuthayfi shares her passion for mobile development with fledgling developers

Posted by Janelle Kuhlman, Developer Relations Program Manager

Emoji of muslim woman wearing hijab

For Women’s History Month, we’re celebrating a few of our Google Developer Experts. Meet Maryam Alhutayfi, Android GDE. The GDE program team encourages qualified candidates that identify as women or non-binary to express interest in joining the community by completing this form.

Android GDE Maryam Alhuthayfi has loved programming since high school, when she learned programming in Visual Studio and basic website development.

“We didn't get much beyond that because there weren’t many Arabic resources,” she says. “That experience got me excited to dig deeper into technology. I wanted to know how the web functions, how software is made, and more about programming languages.”

Maryam studied computer science at university and majored in information systems. For her senior year graduation project, she and her team decided to build an Android application, her first experience with Android. She graduated with honors and landed a job as a web developer, but she kept thinking about getting back to being an Android developer.

She joined Women Techmakers in Saudi Arabia in 2019, when the group launched, to connect with other women in tech to help and support. She got a job as an Android robotics developer and became a co-organizer of GDG Cloud Saudi, her local Google Developer Group. Now Maryam is a senior Android development specialist at Zain KSA, one of Saudi Arabia’s largest telecommunications companies, which she describes as “a dream come true,” and in January 2022, she became an Android GDE.

Maryam is the first Android GDE in the Middle East and the second in North Africa. She contributes to the Android community by speaking about Android and Kotlin development in detail, and software development more generally. She maintains a blog and GitHub repository and gives numerous talks about Android development. She encourages Android developers to use Kotlin and Jetpack Compose, and she describes both as causing a major shift in her Android development path. She started the Kotlin Saudi User Group in 2020.

Maryam regularly mentors new Android developers and gives talks on Android for Women Techmakers and Women Who Code. She encourages Android developers at big companies like Accenture and Careem to join and contribute to the Android community.

Remembering how few Arabic resources she had as a high school student, Maryam creates both Arabic and English content to enrich Android learning resources. “I made sure those resources would be available to anyone who wants to learn Android development,” she says. “Locally, in collaboration with GDGs in Saudi Arabia, we host sessions throughout each month that cover Android, Flutter, and software development in general, and other exciting topics, like data analytics, cyber security, and machine learning.”

She regularly attends the Android developer hangouts led by Android GDE Madona Wambua and Android developer Matt McKenna to learn more and get inspired by other Android developers in the community.

In her full-time job, Maryam is immersed in her work on the official Zain KSA app.

“It’s my job and my team’s job to give our millions of customers the best experience they can have, and I’m pushing myself to the limit to achieve that” she says. “I hope they like it.”

Maryam encourages other new developers, especially women, to share their knowledge.

“Communicate your knowledge–that makes you an expert because people will ask you follow-up questions that might give you different perspectives on certain things and shift your focus on learning new things constantly ” she says. “You serve others by sharing your knowledge.”

Follow Maryam on Twitter at @Mal7othify | Learn more about Maryam on LinkedIn.

The Google Developers Experts program is a global network of highly experienced technology experts, influencers, and thought leaders who actively support developers, companies, and tech communities by speaking at events and publishing content.

The GDE program team encourages qualified candidates that identify as women or non-binary to express interest in joining the community by completing this form.

How an Android developer in Guatemala advocates for women through the Google Developer Groups community

Posted by Rodrigo Akira Hirooka, Regional Lead, Latin America

Getting acquainted with Android career options

Cecilia Castillo loves mobile development. She’s confident that she’d be happy focusing on it for the rest of her career. Cecilia’s career in mobile development began when her friend Adrian Catalan (Director of the Innovation Lab at Galileo University), launched a Google Developer Groups (GDG) chapter in Guatemala and began to teach Android courses.

Up until that point, Cecilia had used technologies like ASPX and Ruby on Rails – and was no stranger to technical concepts, having studied computer science at Galileo University in Guatemala and earned a Master’s degree in information technology, but she was also itching to learn something new in a supportive environment. That’s when she attended a locally organized GDG event. “ I got more involved in GDG meetups and helped organize them, and I learned how to code in Android.”

Woman with long straight hair holding a microphone standing in front of a projector screen giving a presentation

“Mobile experiences are often the first interaction people have with a product or service. An experience on mobile can determine whether someone will love it or hate it, and I think that is a big responsibility and a privilege.”

2013: a pivotal year of community leadership

In time, she found the GDG community helped her feel a sense of camaraderie in the LATAM tech community and in 2013, Cecilia decided to attend Google I/O. She found it “life-changing,” she says, and loved being able to share her enthusiasm for mobile development with more people from all over the world.

That very year, Cecilia began helping plan International Women’s Day back home in Guatemala and helped run the first International Women’s Day (IWD) event there. “It was the start of something exciting. I was always passionate about creating spaces where other women could share their experiences, their talents, and everything technical they were learning,” she says.

She says IWD events make it possible for her to meet women from all over the world who are doing interesting work in technology. In addition, Cecilia says International Women’s Day events and GDG groups create momentum around the idea that women are tech experts and leaders.

Inspiring other female leaders and improving the local programs

Cecilia says she and her planning team try to make their IWD event bigger and better every year, making sure to invite a combination of new speakers and women with more experience who have been giving talks and working in tech for a while.

The Innovation Lab at Galileo University now supports the two-day virtual event, which occurred on March 11-12 this year. This year’s event included student-focused programming to encourage prospective developers to pursue tech careers or apply tech to their interests. Around 70 speakers participated, some from different countries in Latin America and others from Guatemala.

Blue graphic advertising an International Women's Day Event hosted in Guatemala

Cecilia says the university has played an important role to help the GDG chapter achieve its goal of more visibility and reaching a broader audience. Furthermore, Celicila recognized that Evelyn Cruz, lead of the Engineering Education Group at Galileo University, has been instrumental during the planning process.

Looking ahead to new opportunities

“I think it is important to create moments and spaces where we can celebrate and spotlight all the amazing things women are doing,” says Cecilia. “By being part of a bigger network like GDG, we also get to know and learn from talented women from all over Latin America and the world.

Woman in white shirt with long straight hair standing and smiling with a giant Android logo robot

“The GDG community offers a very diverse group of people, and I think this diversity of countries, companies, and expertise adds value for anyone who is involved in these communities.”

Developing those initial Android skills has paid off, as Castillo now serves as a co-organizer for Google Developer Group (GDG) in Guatemala, holds a position as a Women Techmakers ambassador, and works as a Senior Mobile Engineer at PayPal. In this role she works on both Android and iOS platforms and she’s now giving back to the community in so many ways.

Learn more about Google Developer Groups and how to join or start one near you here.

How an Android developer in Guatemala advocates for women through the Google Developer Groups community

Posted by Rodrigo Akira Hirooka, Regional Lead, Latin America

Getting acquainted with Android career options

Cecilia Castillo loves mobile development. She’s confident that she’d be happy focusing on it for the rest of her career. Cecilia’s career in mobile development began when her friend Adrian Catalan (Director of the Innovation Lab at Galileo University), launched a Google Developer Groups (GDG) chapter in Guatemala and began to teach Android courses.

Up until that point, Cecilia had used technologies like ASPX and Ruby on Rails – and was no stranger to technical concepts, having studied computer science at Galileo University in Guatemala and earned a Master’s degree in information technology, but she was also itching to learn something new in a supportive environment. That’s when she attended a locally organized GDG event. “ I got more involved in GDG meetups and helped organize them, and I learned how to code in Android.”

Woman with long straight hair holding a microphone standing in front of a projector screen giving a presentation

“Mobile experiences are often the first interaction people have with a product or service. An experience on mobile can determine whether someone will love it or hate it, and I think that is a big responsibility and a privilege.”

2013: a pivotal year of community leadership

In time, she found the GDG community helped her feel a sense of camaraderie in the LATAM tech community and in 2013, Cecilia decided to attend Google I/O. She found it “life-changing,” she says, and loved being able to share her enthusiasm for mobile development with more people from all over the world.

That very year, Cecilia began helping plan International Women’s Day back home in Guatemala and helped run the first International Women’s Day (IWD) event there. “It was the start of something exciting. I was always passionate about creating spaces where other women could share their experiences, their talents, and everything technical they were learning,” she says.

She says IWD events make it possible for her to meet women from all over the world who are doing interesting work in technology. In addition, Cecilia says International Women’s Day events and GDG groups create momentum around the idea that women are tech experts and leaders.

Inspiring other female leaders and improving the local programs

Cecilia says she and her planning team try to make their IWD event bigger and better every year, making sure to invite a combination of new speakers and women with more experience who have been giving talks and working in tech for a while.

The Innovation Lab at Galileo University now supports the two-day virtual event, which occurred on March 11-12 this year. This year’s event included student-focused programming to encourage prospective developers to pursue tech careers or apply tech to their interests. Around 70 speakers participated, some from different countries in Latin America and others from Guatemala.

Blue graphic advertising an International Women's Day Event hosted in Guatemala

Cecilia says the university has played an important role to help the GDG chapter achieve its goal of more visibility and reaching a broader audience. Furthermore, Celicila recognized that Evelyn Cruz, lead of the Engineering Education Group at Galileo University, has been instrumental during the planning process.

Looking ahead to new opportunities

“I think it is important to create moments and spaces where we can celebrate and spotlight all the amazing things women are doing,” says Cecilia. “By being part of a bigger network like GDG, we also get to know and learn from talented women from all over Latin America and the world.

Woman in white shirt with long straight hair standing and smiling with a giant Android logo robot

“The GDG community offers a very diverse group of people, and I think this diversity of countries, companies, and expertise adds value for anyone who is involved in these communities.”

Developing those initial Android skills has paid off, as Castillo now serves as a co-organizer for Google Developer Group (GDG) in Guatemala, holds a position as a Women Techmakers ambassador, and works as a Senior Mobile Engineer at PayPal. In this role she works on both Android and iOS platforms and she’s now giving back to the community in so many ways.

Learn more about Google Developer Groups and how to join or start one near you here.

Android GDE Zarah Dominguez believes in the power of technology to help others

Posted by The Google Developers Team

Zarah Dominguez 

For Women’s History Month, we’re celebrating a few of our Google Developer Experts. Meet Zarah Dominguez, Android GDE. The GDE program team encourages qualified candidates that identify as women or non-binary to express interest in joining the community by completing this form.


Zarah Dominguez started Android development in 2009 and hasn’t looked back. “When I first discovered Android, I thought it was super cool seeing what I have coded come to life on a device within just a few clicks,” she says.

Learning Android on her own, Zarah began documenting what she learned, to remember it herself and to help others. “Sometimes, I'd see answers on StackOverflow that said, ‘It's simple,’ or ‘It's straightforward,’ but it wasn't simple or straightforward for me, so I kept on writing, and more people, all over the world, started reading my posts. I was very surprised when I met another Android dev at Google I/O, and she told me that one of my posts helped her get unstuck. Being able to help even one person is a reward in itself, and hearing that from a fellow developer made me happy.”

Zarah got involved in the local Android community by speaking at conferences and organizing meetups, and a community manager nominated her to apply for the GDE program. She has run monthly Android meetups in Sydney and organized DevFests, and she speaks at community events and conferences in the U.S., Australia, and New Zealand.

Android development is exciting and challenging because of the dynamic nature of the technology, Zarah says, with new features being released frequently and a vibrant developer community engaged with the platform. “The community around Android development is amazing–everyone is generous with their time and knowledge, which helps me improve my apps’ stability and performance,” she says. “The guidance and tools the Android team provides help me make better choices as a developer, influencing how I approach problems and propose solutions.”

Zarah says Android broadens the reach of any project. “I am very lucky to get a new device every so often, but not everyone has that privilege, and a huge chunk of our user base may have phones that are a few years old or without a lot of processing power,” she says. “That's part of the beauty of Android! A wide range of devices fit all sorts of budgets. The more devices we support, the more people we reach; the more people we reach, the more people we can help.”

Helping others is Zarah’s priority, as she believes accessibility should be first and foremost in the minds of app developers. “Technology, when used properly, has a huge potential of improving the lives of so many people,” she says. “I like building apps that have a positive social impact. From apps that help phlebotomists and nurses record and organize blood samples, to real estate apps that help people find their perfect home, to supermarket apps that help Australians get their weekly shop sorted, Android has allowed me to reach thousands of people and make their day-to-day tasks a little bit easier.”

She encourages other women developers to be confident and join the community. “@AndroidFeminati on Twitter is a good place to start,” she says. “It's an inclusive and supportive group of women in Android. It's also good to seek out local meetups like Women Who Code or Girl Geek Dinners to meet other women in tech in your local area. There's nothing like having a group of strong women who are behind you no matter what and will support you 100%.”

She advises taking mistakes in stride and staying upbeat. “You will learn from it, and you will be better for it,” she says. “Perhaps most important of all is to always remember that you are capable, you are strong, you are extraordinary, and do not let anyone tell you otherwise!”

Learn more about Zarah’s journey by watching her Android Developer Story: https://youtu.be/ZKbuqDbk-0c

Follow Zarah on Twitter at @zarahjutz | Learn more about Zarah on LinkedIn.

The Google Developers Experts program is a global network of highly experienced technology experts, influencers, and thought leaders who actively support developers, companies, and tech communities by speaking at events and publishing content.

The GDE program team encourages qualified candidates that identify as women or non-binary to express interest in joining the community by completing this form.

GDE Profile: Danielle Monteiro, Cloud GDE

Posted by Janelle Kuhlman, Developer Relations Program Manager

Image of brown woman with black curly hair facing forward and smiling

Cloud GDE Danielle Monteiro seeks to introduce more women and underrepresented people to data and the Cloud

For Women’s History Month, we’re celebrating a few of our Google Developer Experts. Meet Danielle Monteiro, Cloud GDE.

“There are few Black women working with data,” says Cloud GDE Danielle Monteiro, who works full-time as a Cloud Solutions Architect - Data & Artificial Intelligence at Microsoft in São Paulo, Brazil. “Being a Black woman working with data and recognized by Google is a very important recognition, and it helps me bring possibilities to women who share the same origin as me.”

In her almost 20 years of experience in technology, Danielle has worked as a developer, a Database Administrator, a Data Architect, and a Data Engineer, and is now a Cloud Solutions Architect. She holds a Master’s degree in Computer Engineering and is a Microsoft Regional Director, a Microsoft #MVP, and a Microsoft Innovative Educator Expert. She gives frequent talks and has designed multiple courses and tutorials because she believes it’s important to share technical knowledge with as many women as possible. “We have openings in technology; we have wonderful technologies, but we lack people with this knowledge,” she says. “I believe that technology, combined with shared knowledge and empathy, will change the world.”

In 2019, Danielle was the first Brazilian woman to speak at MongoDB World, was honored with a MongoDB innovation award and named a MongoDB Female Innovator. She has recorded three courses for LinkedIn Learning. Danielle also created the DANI Academy platform to help developers and database administrators deploy, optimize, and propose complex data architectures. Her DB4Beginners.com blog helps beginner developers model and query relational and NoSQL databases. She also participates in communities including Databases-SP, woMakersCode, .NET-SP, and BlackRocks. Currently, Danielle is in the midst of a project focused on inviting people from underrepresented groups to work with data and the Cloud. “I love working with data and the Cloud,” Danielle says. “I believe that I can share my knowledge and bring more and more women to an incredible area.”

Google Cloud has helped her in her work and personal projects, and being a GDE has allowed her to dive deeper into the product. “Believe me, this support is essential,” she says. “I believe in the union of a great company and my ideas of sharing and mirroring knowledge to other women. It’s an honor to be a GDE.”

Follow Danielle on Twitter at @danimonteirodba | Learn more about Danielle on LinkedIn.

The Google Developers Experts program is a global network of highly experienced technology experts, influencers, and thought leaders who actively support developers, companies, and tech communities by speaking at events and publishing content.

How Jira for Google Chat uses the latest platform features for app and bot building

Posted by By Kyle Zhao, Software Engineer and Charles Maxson, Developer Advocate

Nothing breaks the flow of getting work done like having to stop what you’re doing in one application and switch over to another to look up information, log an event, create a ticket or check on the status of a project task. For Google Workspace users who also rely on Atlassian’s Jira Software for their issue tracking and project management needs, Jira for Chat helps bridge the gap between having conversations with your team in Google Chat and seamlessly staying on top of issues and tasks from Jira while keeping everyone in the loop.

Recently, there have been a number of enhancements to the Google Chat framework for developers that allows them to make connections between applications like Jira and Google Chat a whole lot better. And in this post, we’ll take a look at how the latest version of Jira for Chat takes advantage of some of those newer enhancements for building apps and bots for Chat. Whether you are thinking about building or upgrading your own integration with Chat, or are simply interested in getting more out of using Jira with Google Workspace for you and your team, we’ll cover how Jira for Chat brings those newer features to life.

Connections made easy: Improved Connection Flow

One of the most important steps for getting users to leverage any integration is to make it as easy as possible to set up. Setting up Jira to integrate with Chat requires two applications to be installed, 1) the Google Chat bot for Jira Cloud from the Atlassian Marketplace and 2) Jira for Chat (unfortunately there are no direct links available, but you can navigate to it in the Chat catalog) located in the Google Chat application under the “+” icon to start a chat.

In the earlier version of Jira for Chat, the setup required a number of steps that were somewhat less intuitive. That’s changed, with the redesign of the new connection flow process that’s built around an improved connection wizard that provides detailed visual information to connect Jira for Chat to your Jira instance.

The new wizard (made possible by enhancements with the Chat dialogs feature) takes the guesswork of trudging through a number of tedious steps, shows actionable errors if something has been misconfigured or isn’t working and makes it easier by parse out Jira URLs guiding users along the way. See the connection wizard in action below. Now anyone can set it up like a pro!

Jira for Chat Connection Flow Wizard Dialog

Batched Notifications: Taking care of notification fatigue

A user favorite feature of Jira for Chat is its ability to keep you informed via Google Chat of updates to your team's projects, tickets and tasks. But nobody likes a ‘chatty’ app either and notification fatigue is real—and really annoying. Notifications are only useful when they provide valuable information in a timely fashion without being overburdening - otherwise they run the risk of being ignored or even turned off.

To avoid notification fatigue, the Jira Chat bot enables batched notifications that optimizes sending notifications in batches based on the time elapsed since the last activity in an issue. Jira for Chat will send all updates to a ticket with a single card to Google Chat if a lot of activity is happening in Jira until at least 15 seconds have passed since the last update to the issue or 60 seconds have passed since the first update in the group. The latter keeps notifications fresh in case a lot of continuous activity is happening.

Updates to the same Jira issue are grouped in one notification card, until one of the following conditions is true:

  1. 15 seconds have passed without any additional updates to the issue.

    Example: Alice reassigned issue X at 6:00:00, and then added a comment at 6:00:10. Both the “assignee change” and the “new comment” will be grouped into a single notification, sent at 6:00:25.
  1. 60 seconds have passed since the first update in the group (to ensure a timely delivery)

    Example: Alice reassigned issue X at 6:00:00, and kept adding comments every 10 seconds. A notification card should be posted around 6:01:00, with all the changes in the past 60 seconds.

Example, Batching Notifications from 5 down to 1

Link Unfurling: Relevant context where you need it

One of the goals of integrating applications with Google Workspace is streamlining the flow of information with less clicks and fewer open tabs, making the new Link Unfurling feature a welcome addition to any Chat bot. Link Unfurling (also known as Link Previews) preemptively includes contextual information associated with a link passed to a Chat message, keeping the information inline and in context to the conversation while eliminating the need to interrupt your focus by following the link out of the conversation to its original source to gather more information.

Specifically with Jira for Chat, this means when a teammate posts a Jira link in Chat or pings you asking about more information about one of your tickets they’ve just linked in a message, you can now see that information immediately in the conversation along with the link, saving the steps of having to resort back to Jira every time. Link unfurling with the Jira Chat bot happens automatically once the app has been added and configured within a Chat conversation, there’s nothing additional that users need to do, and any links that Jira can preview will automatically get previewed within Chat.

Link Unfurling example in Jira for Chat

Create Issue Dialog: Take action from within Chat

Imagine you are in a lengthy conversation thread with colleagues in Google Chat, when you come to the conclusion that the topic you are discussing warrants a new ticket being created in your Jira instance. Instead of pivoting away from the conversation in Chat to create a new ticket in Jira, you can now quickly create a new Jira issue in Chat thanks to Jira for Chat.

To create an issue from Chat, simply invoke the slash command /jira_create to bring up the Create Issue dialog (enabled by the Chat dialogs feature). Then specify the Project that you would like to assign the ticket to, select Ticket Type, and enter a brief Summary. The rest of the fields are optional such as labels and description, and those, as well as advanced fields can always be filled out within your Jira instance at a later time if you would like. This way you can jump right back into the conversation, knowing you won’t forget to get this ticket logged, but also without missing a beat with what your team is talking about.

Create a Jira Issue Dialog

Takeaway and More Resources

The new enhancements to Jira for Chat make it a super useful companion for teams that rely on Google Workspace and Jira Software to manage their work. Whether it's the new and improved connection flow, the less-is-more batched notifications handling, or the instant gratification of creating issues directly from Chat, it's more than just a productivity booster, but also a great showcase for how the types of apps you can build with Google Chat are evolving.

Get started with Jira for Chat today or learn how you can build your own apps for Google Chat with the developer docs. To keep up with all the news about the Google Workspace Platform, please subscribe to our newsletter.

Stepping up as a Machine Learning Developer —My Experience With the Google Machine Learning Bootcamp

Posted by Hyunkil Kim, Software Quality Engineer at Line Corp.

banner image that includes math chart, brain, and GDS logo

This article is written by Hyunkil Kim who participated in the Machine Learning Bootcamp which is a machine learning training program conducted in Korea to nurture next-generation ML engineers and help them to find jobs.

banner image with text that reads google developers machine learning bootcamp

As a developer, I had developed a certain level of curiosity about machine learning. I had also heard that many former developers were switching their specialization over to machine learning. Thus, I signed up for the <Google Machine Learning Bootcamp>, thinking it would be a good chance to get my feet wet.

I was a bit nervous and excited at the same time after getting the acceptance notification. Wondering if I should go over my Python skills one more time in preparation, I installed the newest version of TensorFlow on my machine. I also skimmed through documents on the basics of machine learning. Those were all unnecessary. To put it bluntly, I had to relearn everything from scratch over the course of the bootcamp. It was quite challenging to be introduced to new concepts I wasn't familiar with, such as functional API and the concept of functional programming in general, various visualization libraries, and data processing frameworks and services that were new to me. I worked very hard with the mindset of starting fresh.

Journey to Becoming a Machine Learning Engineer

There were three main objectives for the participants: completing the Deep Learning Specialization on Coursera which is based on TensorFlow, acquiring ML certifications(TensorFlow certificate or Google Cloud ML(or Data Science) Engineer certification), and participating in Kaggle competitions. Google Developers team provided the course fee for Coursera and the certification fee and offered many benefits to those who completed the course. You could really make it worth your while as long as you took the initiative and applied your passion.

<Coursera Deep Learning Specialization>

The Coursera class is based on TensorFlow 2.x and requires watching a set amount of instructor Andrew Ng's lectures on AI every week with screenshots and proof. It was pretty tough at first as the lectures were not in Korean. However, because the class was so famous, I was able to find posts on the internet that broke down the lectures and made them easier to understand. The class also provided reference links, so you could study more on your own once you got used to the class.

While this is not really related to the Coursera class, I also participated in online coding meetups by the bootcamp participants in-between classes as in the picture below, and it was a memorable experience. These are basically sessions held in coffee shops or study rooms where people got together and worked individually on their own coding projects in normal times. Because of the pandemic, we could not meet in person obviously and used Google Meet or Gather town and left our cameras on as we coded. It felt like I was studying with other people, and I liked the solidarity of relating to others.

animated image of cartoon figures in a dining room

<Machine Learning Certifications>

You were required to acquire at least one certification during the bootcamp. I chose to work on the GCP ML Engineer certification. As I used Google Cloud, I had wondered how ML services could be used on cloud. Coursera happened to have a specialization program for the GCP ML certification, so I took it, too. However, in the end, Google's website offering GCP AI operations and use cases helped me more with the certification than the course on Coursera.

Image of Google Cloud certification awarded to Hyunkil Kim

<Kaggle Competition>

I didn't get to spend as much time on Kaggle. I didn't see any current projects that interested me, so I tried the TPS to review what I had learned so far. TPS stands for Tabular Playground Series, which is a beginner-to-intermediate level competition for new-ish Kagglers that are just getting the hang of it. You're required to predict the value of the target from the provided tabular data. It is slightly more difficult than Titanic Survival Predictions, which is a beginner competition. I chose this competition because I figured it would be a good practice of things I had learned so far, like data analysis, feature engineering, and hyperparameter tuning.

Image of duck shown as Hyunkil Kim's profile picture on the Kaggle dashboard

This was the part where I personally felt like I could have done better. I had many ideas for improving the model or enhancing the performance, but it took way more time to apply and experiment with them than I had expected. If I had known that model learning would take this much time, I would have started working on Coursera, the certification, and the Kaggle competition all at once from the beginning. Maybe I was too nervous about entering a Kaggle competition and put it off until the end. I should have just tried without getting so nervous. I hesitated too long and ended up regretting it a little too late.

<Tech Talk and Career Talk>

The bootcamp also included many other activities, including a weekly Tech Talk on specific themes and recruiting sessions of potential employers. Companies looking for ML talents were invited and had a chance to introduce themselves, explain the available positions, and take questions about joining their workforce. Some companies sent their current Machine Learning engineers to explain how they solved business problems with which models or what kind of data. Some companies focused more on describing the type of people they were looking for in detail. I didn't know at the time, but I heard that some of the speakers were big names in the industry. Personally, I found these talks very helpful in terms of both finding employment and familiarizing myself with the trends in the industry. The sessions were very inspiring as new ideas kept flowing as I heard about applications of technologies I only knew in theory or thought about what kind of investments in AI would be promising.

Besides the Tech Talks, there were also more relaxed sessions for things like career consultation and resume/CV reviews. There were even sessions by the Googlers, where they personally answered participants' questions and offered some advice. As I attended various sessions, I noticed that the bootcamp crew and many Tech Talk speakers from hiring companies offered authentic and valuable advice and were very eager to help out the bootcamp participants. Nobody talked about the cold reality of the world out there. Knowing how rare it is to find mentors that offer genuinely constructive feedback and guidance, I personally was very touched and grateful about that.

Concluding the Machine Learning Bootcamp.

The Google Machine Learning Bootcamp captured the essence of what it would be like to work for Google. I felt like they expected you to take your own initiative to do what you wanted. They showed that they were willing and able to help you grow as much as possible as long as you did your best. For example, one of the world's most famous programmers Jeff Dean was at the kickoff session, and there was even an AMA session with Laurence Moroney, who had developed the training course for TensorFlow. They also allowed maximum freedom about finding teammates for the Kaggle competitions so that you didn't have to worry about having to carry your team. Things covered in the Tech Talks or recruitment sessions were not included in assignments. They let the participants do their thing freely while promising the best support possible in the industry if needed. I could see how some people would find it too lax that Google lets you study on your own at your own pace.

Image of video conference call with Andrew Ng, Jeff Dean, and Laurence Moroney

I think this was a rare chance to meet people from various backgrounds with the common goal of becoming machine learning engineers or developers. It was a unique experience where I got to talk and study with good people and even do something strange like the online coding meetup. There were also times when I was vainly taking pride in what little knowledge I had, but I ended up putting a lot of work into the bootcamp, wanting to make the most of it and to come ahead of others.

In the end, the take-home message is to "try anything."

Personally, I was very happy with the experience. I got to be a little more comfortable with machine learning. As a result, I'm able to pay more attention to details related to machine learning at my new job. The challenge of facing something new is a constant of a developer's life. Still, participating in this bootcamp felt especially meaningful to me, and I enjoyed it thoroughly.

While the bootcamp is over, I heard that some participants are still continuing with their study groups or projects. Wanting to study as a group myself, I also had asked around and volunteered to join a study group, but I ended up studying alone because none of the groups covered the area I was interested in. Even so, many people sharing useful information on Slack helped me as I studied alone, and they are still helping me even after the bootcamp.

At any rate, I keep coming up with various ideas that I want to try in my current job or as a personal project. It feels like I found a new toy that I can have fun with for a while without getting tired of it. I think I'll start slowly with a small toy project.