 Hello everyone, and welcome to this time's front and functional group update. I'm very happy to share what we have done in the past weeks and what is our outlook for the next weeks. If you have any questions during my hopefully very short presentation, please also jump in and ask questions. And I'm also happy to answer questions in the end. So, what happened in the front and team in the last weeks? Let's take a look. So first of all, Q1 ended so we had our scoring on the OKRs. We were able to fulfill the writing more unit tests easily. We closed more than our target of 300 bucks. We have done 320 in that time. The believable goal of delivering 100% was also OK. We improved now again. We are trying to find our velocity at the moment with a lot of new team members who are already doing a great job to contributing. But it's very hard to find out at the beginning of the month what we can actually ship and we have doing constant progress to improve that over the next releases. Make sure our front and community contributions are merged. We haven't done that for all the community contributions. There were some quite big ones that also will be merged now in 10.8 and one was merged in 10.7. So happy about that. But we definitely need to make a better job also to do especially small ones. The specific technical team that we formed has done a great job to resolve all our big technical depth that we wanted to tackle. So to this patcher.js, which is basically splitting up everything in the front end code into smaller bundles. We have done the jQuery upgrade, which was also important. We are focusing on view, but of course we still have a huge code based part is in jQuery. And this is why it was quite important to upgrade to get performance improvements and also future upgrades there. Hosea has done a great job on the side speak Docker containers that we have continuous progress on our performance monitoring. And we have done four great new hires, which are very onboarded really nicely and doing as I said, a great job already. Other things, we have something that we call domain experts. We've defined them now. So this should help to if you want to ask a question about the front end, if you want to know something specific in a specific area about front end code, etc. We have now a list of assigned domain experts. So we have Philippa, who is the expert on CICD and the security product. We have Fatih for discussion, merge request use, portfolio Cushar, WebID field. And then we have also internal technical topics like security topics, Philippa, testing, Vini, UI components, Clement, WebPack and tooling is mic at the moment. The idea is to really have simply persons that other people from the outside can contact, but that will be also targeted from the inside. So basically they will do estimation and analyzing of new deliverables and should help us to streamline the big bunch of deliverables that we are getting in every month and be simply responsible for that specific area. So you can read up more about that in the handbook. We have something that is also new is the front end calendar that Clement created so with front end specific calendar items that are happening. Something that we have also targeted in the last F2U was prettier. Automatic code forming is a really important thing and with only a very small hiccup, which was the discussion about line length. And I'm pretty happy that it was on our only problem. We have now automatic code forming. What does this mean? Every time front end engineer is saving a JavaScript or view file, automatically the code gets formatted in their editor. And what we are doing at the moment is that we are not simply prettifying all the code because then we would have huge merge request. We are doing this like organically and merge request by merge request and Lucas has done a really fun and great site project on the weekend. And which is pretty yet. So it basically analyzes our current code and takes a look at how many of our files already prettified and what still needs to be prettified. So in C we are already 42%. Take a look. It's a really nice visualization. Yeah. And by example, Facebook has done the same with the code base. It took them eight months and we have now prettified 10% in the first release cycle. Something else that we are working on is to basically manifest all the learnings that we have done over the last month is a new development checklist, which is currently in a merge request. The idea is to simply have a checklist about things that front end engineers should think about during the planning of a development. So it's not for every tiny bit or small or medium task. This is really for big new features, big new refactorings is to simply have a checklist like pilots have that everyone can go through and simply be reminded of architecture plans, how to speak to other people, what they need to consider that they should consider talking to security if there's a new feature stuff that they should during development like provide gifts and screenshots so that other parties are also involved. So this is like our living document and we are just discussing it at the moment and really looking forward about the results that this will give us. Yeah, those are the accomplishments and updates. What else did we do? We did, we finished a lot of really great new features, which were these are simply the ones that were very front end centric. So crucial example has done a great job with our epic roadmap, which is a really UX and front end intensive feature. Phil and Andre have done a great job with the Web IDE, which is now coming to general availability. So we have deep viewing we have image viewing you can open my mattress simply try it out and give us feedback in the Web IDE channel. I think we have come already to a really nice feature set and in 10.8 there will be even much more nicer features like finding files with a fuzzy file find a really fast and really nice. Vinny has done a great job on the project in two pages, which is also completely written in view it's a view application which was also something nice to try out. Philip has done the security package implementation and the reports in CI. And there are a lot of more other and smaller features I just wanted to highlight some of the very front end centric, but yeah, the team has done a great job in my perspective. What is the outlook outlook to our PRs we want to concentrate again, delivering 100% of the levels and improving that a lot. We want to do something about reusable view components more on that later. And we want to hire three new developers. So we currently have the luxury of having already one signed for this month, and we have two more in the pipeline. And we are all crossing our fingers that those two candidates will be also quite soon signing and that we have basically all three developers already at the beginning of the quarter in our team and big shout out to Nadia for helping us a lot on that. You like components. As you have heard in the last function group updates, our idea is to really go component based architecture so that we have reusable components that we can work on and can really boost our performance in productivity. And what started as a simply CSS refactor that was the beginning of the plan for the technical team was now we evaluated after like one and a half months, how, how fast it can go through the refactor and what we came up with is it is currently not an effective plan to do it refactoring first and afterwards go for the component. So what happened is that the team was working on typography and markdown. And now we made a decision and Clement is already very fast. We just got the update that we already in the final stages and we are quite sure that we can do the upgrade in 10.8 already. So this means we are converting GitLab from bootstrap 3 to bootstrap 4. What does this mean for us? This gives us the opportunity to use component library that we will most probably choose which is called new bootstrap. And new bootstrap simply gives us all the components that bootstrap has already as actual JavaScript components so we can reuse that easily in view and they are not just CSS classes but they are something really reusable. And this is one part of our component based architecture so we simply will skin and style them so that they will work and look like the components that we have in design.gitlab.com that was defined by the EX. And on the other hand, we will create our own GitLab specific components like project, our tasks, user pickers, info boxes for merge requests and so on and so on so that we really have like we can put together a bunch of components and have easy very easily and very fast new features that we simply stick together. Yeah, and other improvements that we want to do on the workflow that I already mentioned last time and one big thing is that Mike will be working on already in 10.8 is upgrading to Webpack 4. Webpack 4 is a big thing in the JavaScript community at the moment because it's improving of course everything but it definitely will give us a performance improvements on build time but also on execution time. I will take a look at the chat. So it's about the hiring. Challenges. What are our biggest challenges in the next month? Definitely one big thing that we are already dragging on a long time but it is really one of the biggest, biggest, biggest refactoring that GitLab has ever seen. And one of the things that Fatih and Simon are working on is finishing the huge merge request refactoring for 10.8. All the work is done, tests are done and it's really now in review phase. It's really, really super fast. It's no comparison to the current merge request reviews. I'm really excited as soon as we get this much and we are really working hard to get this in now for 10.8 and get this to the ground. So hiring the next three front-end engineers is already down to two, which is great. So because we hired one structuring the team and sub-teams, this is another big topic as we are growing and growing and growing. It's definitely a very short-term and mid-term plan to basically structure also our team and sub-teams and have sub-managers in place and this is one of the big challenges in the next months and this quarter. Yeah, and hitting the 100% deliver of deliverables so that we are really able to focus and really are able to deliver actually what we promised to deliver and really reach a much higher percentage there and so that the PMs really get everything that they, all the things that they requested. And yeah, introduce the reusable UI components. I think this is definitely a challenge, but will be a huge advantage for overall because it will boost our productivity by a multiplication that's called it this way. Yeah, and that's it from my side. So looking forward to your questions. Yeah, if we are so ahead on our OKRs, do we get all at the hiring OKR? Do we need to pick a new one? Good question. We opened up the hiring pipeline for a very short time. We already got some applicants. We also look through them and we also get back to them. Let's see, as we really saved a lot of time, as Nadja wrote, there are a lot of applicants for the front-end thing so that we save a lot of time. So yeah, why not get another OKR and do another one, but perhaps let's, I would say let's concentrate first on the other two. And as soon as we have other chiefs, then we can find in something more or simply not deliver just three components, but deliver 30. If we use view bootstrap components, is there a risk that we will end up overriding a lot of it like we have done with the standard CSS bootstrap? No, I hope not. It's really what we will do with view bootstrap is that we are then not tackling CSS classes anymore. We have really like a component that has different attributes. You can't change anything to it. You really are forced to use a component in the first place and the idea is to basically reset our whole CSS strategy from that moment on. And my long-term plan is really that if someone wants to change CSS, they need to fill out first a 10 pages form before they are allowed to change anything in our CSS. So as Clement also wrote now, it's encapsulation of the component. So we are not saying anymore at this CSS class or this CSS class. We simply say this button is representing a danger that's I think one attribute that is called in bootstrap and stuff like that. So you are not able to go around much as it is easy with CSS, by example. I hope that answered the question. Exactly. Any other questions? If not, then I'm closing it at 4, 3, 2, 1. Thank you very much everyone. See you on the team call. Thank you frontend team and thank you for listening. Have a nice day.