[19:00] <ClassBot> Logs for this session will be available at http://irclogs.ubuntu.com/2012/10/18/%23ubuntu-classroom.html following the conclusion of the session.
[19:01] <Cheri703> Hi everyone, welcome to our CareerDays session!
[19:01] <Cheri703> We had a pretty lengthy hiatus, but we are back!
[19:01] <Cheri703> Today's presentation is goign to be by Dolasilla - Silvia Bindelli, about being a Software Release Coordinator!
[19:02] <Cheri703> Silvia was also recently elected to the Ubuntu Women Leadership team, so we're very excited to have her.
[19:02] <Cheri703> As always: To ask a question, you need to be in #ubuntu-classroom-chat and ask your question in the following format:
[19:02] <Cheri703> QUESTION: <question>
[19:02] <Cheri703> Where <question> is your actual question. If you do not begin the line with QUESTION:, ClassBot will not recognize it, and your question will most likely not get answered.
[19:02] <Cheri703> Alright, Dolasilla, if you're ready, take it away!
[19:02] <Dolasilla> Hello all!
[19:03] <Dolasilla> I'm really exciteted to be here
[19:03] <Dolasilla> So, first, let me introduce myself
[19:03] <Dolasilla> I'm Silvia, I was born in northern Italy 29 years ago, but I currently live in South of France (which, bottom line, I love!).
[19:03] <Dolasilla> I'm a computer engineer, I graduated at the Politecnico di Milano 4 years ago, with a master thesis in software engineering.
[19:04] <Dolasilla> (ah, a little disclaimer: feel completely free to ask question at any time in the chat channel, I will try to answer them as soon as they get)
[19:04] <Dolasilla> I started being involved in opensource since 2007 but I've been using open source tools for longer time
[19:05] <Dolasilla> Also my master thesis was about an autonomic system (a system able to self-manage) and it was integrating some open source projects, like for instance LIME (http://lime.sourceforge.net/index.html)
[19:05] <Dolasilla> After graduation I've worked for like 5 months at the university as an assistant researcher in the same field as my master thesis (software engineering), and it was pretty interesting!
[19:05] <Dolasilla> After that I've been working in the IT department of a fashion company (yeah, sounds weird) where I was in charge of the business process management project.
[19:05] <Dolasilla> This is also an experience I've enjoyed pretty much.
[19:06] <Dolasilla> I love talking to people, and improving their life through technology
[19:06] <Dolasilla> and that position gave the possibility to really do that
[19:07] <Dolasilla> During that time I had to discuss with managers to understand the way they worked, and then implementing the same or improved processes in the tool, in order to automatize part of their activities and providing a way to organize the output of each phase, in order to build an organized knowledge base structured on the activity flow.
[19:07] <Dolasilla> The tool was very interesting as well: unfortunately not open source, but based on a J2EE architecture.
[19:07] <Dolasilla> It had a very practical user interface, to do the most of the job. But it also allowed to develop new features and to integrate it with the legacy systems of the company.
[19:08] <Dolasilla> I had fun "playing" with it in order to customize it to better fit the needs of the company.
[19:08] <Dolasilla> Such a job was allowing me to deal both with technologies and with people, that is a balance I try to find in all my jobs, as I love both aspects.
[19:08] <Dolasilla> After a couple of years I moved to south of France, looking for new experiences but always trying to keep those two element alive in my day-to-day job.
[19:08] <Dolasilla> And I've managed to get it in my current position as a release coordinator.
[19:08] <Dolasilla> I'm currently working in a big IT company which operates mainly in the online booking business. Bookings of flights, hotels, etc...
[19:09] <Dolasilla> My job mainly consists in coordinating the activities that bring a new release of a software or a patch to the production systems for one of the divisions.
[19:09] <Dolasilla> Basically my role starts after the QA phases and before the actual use of the system by everyone.
[19:10] <Dolasilla> We have a big datacenter, located in a different country
[19:10] <Dolasilla> the releasing team coordinates the activities that actually send new pieces of software to the datacenter
[19:10] <Dolasilla> our customers are airlines
[19:11] <Dolasilla> hotels
[19:11] <Dolasilla> but even travel agencies
[19:11] <Dolasilla> so what we "send" to the data center are both real software upgrades
[19:12] <Dolasilla> but also customizations of the websites of customers, of the way the flow of your booking is shown to you when you book a flight
[19:12] <Dolasilla> (or an hotel room or whatever else)
[19:12] <Dolasilla> So if we look at the day-to-day activity, it actually consists of a mixture of technical and social skills that you need to use everyday.
[19:13] <Dolasilla> From a technical point of view, for instance, in my team we maintain the configurations of the the production systems (which of course cannot be the same of the development or testing or Quality Assurance platforms).
[19:14] <Dolasilla> We get the updates of such configuration set by architecture and development teams, and we store them in our tool to make sure they are applied to the right "farm"
[19:15] <Dolasilla> for those who are less familiar with the farm concept, take it as a logical abstraction of a set of server
[19:15] <Dolasilla> Of course another important element in our job is we have to know the main architecture of production systems and the way newly developed software is deployed.
[19:16] <Dolasilla> About the social side of the job, instead, we often have to coordinate several activities at the same time (technical changes on production servers, new customization of customer websites, new software releases,...).
[19:16] <Dolasilla> Often we find ourselves to be in the middle, having to mediate between the need to keep production environments as much stable as possible, and the needs of marketing to keep the customers happy complying to all of their requests for new features.
[19:17] <Dolasilla> This can be challanging, but since I'm there I have definetly improved my coordination skills, having to take into account at the same time several different activities and needs
[19:18] <Dolasilla> !y
[19:18] <ubot2> U is the 21st letter of the modern latin alphabet. Neither 'U' nor 'Ur' are words in the English language. Neither are 'R', 'Y', 'l8', 'ryt',  'Ne1' nor 'Bcuz'. Mangled English is hard for non-native English speakers. Please see http://geekosophical.net/random/abbreviations/ for more information.
[19:18] <ClassBot> Cheri703 asked: What is the usual time table you are working on? How long is the release process?
[19:19] <Dolasilla> It depends
[19:19] <Dolasilla> if we consider the single web application of the single customer, they have really frequent updates
[19:19] <Dolasilla> on a weekly bases
[19:19] <Dolasilla> basis
[19:20] <Dolasilla> if we think instead of the core of the software, so the engine which actually allows for the booking flows and to search a flight
[19:20] <Dolasilla> we typically have 3 major releases per year
[19:20] <Dolasilla> and 1 or 2 service packs between them
[19:21] <Dolasilla> but of course, the work for the release that is going to production next month has started much time ago
[19:21] <Dolasilla> the discussion about which changes should be included in it have started also one year in advance
[19:21] <Dolasilla> We in the releasing team come to the very end of the flow
[19:22] <Dolasilla> after all development and testing has been done
[19:22] <Dolasilla> of course, some preparation is needed on our side also, before we actually go in production
[19:22] <Dolasilla> The classical flow for a new release from our side is: we first get new configuration settings, some days in advance, in order to store them in our releasing tools.
[19:22] <Dolasilla> We also get notified in case we need to include some technical migration of the underlying technologies (application servers, web servers,...).
[19:22] <shookees> hi
[19:23] <Dolasilla> nce we get the record for the new release, we check its content, include the notes about new configurations and send it to another team in charge of "packing" things up and send them to production.
[19:23] <Dolasilla> This is only an example of the main standard flow, after that there are several different kind of loads as well as different targets depending on the product and the customers.
[19:24] <Dolasilla> In general, for anything, the "packing" part is mostly automated
[19:25] <Dolasilla> The packaging team role is mostly to supervise the packing part, the application of the load on our test system, and then the sending of the delivery
[19:25] <Dolasilla> and to raise exceptions in case they notice something wrong
[19:25] <Dolasilla> The job gets particularly interesting when it is about new implementations of new products and for new customers.
[19:26] <Dolasilla> In this case we have to set up our tools and testing environments to consider new farms. And often we face unforseen challanges about how to deploy brand new architectures and how to handle, afterwards, their maintenance.
[19:26] <Dolasilla> Or it happens that something on which developers are working on their platform need to be sent to production farms, but the content is huge and new in the structure which requires to coordinate different teams in finding a solution, which most likely implies changes in the releasing tools and processes.
[19:27] <Dolasilla> Here the job can get technically quite interesting when it's about thinking solutions to new problems. But also the coordination part keeps being important, to interact with several different teams (development, production support, QA,..) to get the inputs needed for setting up new environments.
[19:28] <Dolasilla> So basically if in most of the cases we have defined processes and tools to automate the job, the challange comes when you get something new which does not fit in
[19:28] <Dolasilla> And you have to think of new processes as well as changings in the tools
[19:29] <Dolasilla> We have in general calm moments, like between a service pack and a release, where we just have standard patches
[19:29] <Dolasilla> and really tense moment, during release time
[19:29] <Dolasilla> where everything must work fine and at the right time
[19:30] <Dolasilla> to minimize the impact on customers, to make sure they get the newest version working properly since the very first day
[19:31] <Dolasilla> It's always about trying to find a balance between offering always the latest improvement, and to keep the stability of production systems
[19:31] <Dolasilla> From the technological point of view, the company being so big, production systems integrate a wide number of technologies, some of them are open source some others are proprietary.
[19:32] <Dolasilla> we also have several internal tools we use to maintain configurations and to ease our releasing job: they care for us of all the configurations of each farm and each product. we just have to keep them up to date everytime there is something new, and then they will automatically fill the fields of parametrized configuration files.
[19:32] <Dolasilla> Also these tools are based on a variety of technologies, and we often rely on open source ones, like apache servers, for instance.
[19:33] <Dolasilla> We handle our own tools and this allow us to have the flexibility to update them quickly when a new need rises
[19:33] <Dolasilla> I would say this is more or less it, hope I've been able to provide a global idea of what I do, but I would be happy to answer any question or to explain further any aspect
[19:34] <ClassBot> Cheri703 asked: Is your job one that you "leave at work" or is it the type of job that if something goes wrong you'll get a call during the night that something needs attention?
[19:34] <Dolasilla> The second one you said ;)
[19:34] <Dolasilla> let's say, in general, we manage to "leave at work"
[19:35] <Dolasilla> but in cut-off periods, so when a big new implementation is going to production
[19:35] <Dolasilla> then we can get definetly called at night, and it happened to me as well
[19:35] <Dolasilla> because if you are changing the full systems of the callcenter of some big company
[19:36] <Dolasilla> you may find new issues that you did not find even in all the tests
[19:36] <Dolasilla> and then you need to send immediately the fix to production
[19:36] <Dolasilla> you cannot wait the next day
[19:36] <Dolasilla> even because if the company is on the other side of the world "next day" can be a relative concept
[19:36] <Dolasilla> anyways, in "normal" mode, we don't get called
[19:38] <Cheri703> Awesome. :D
[19:39] <Cheri703> I'm going to put out a final call, if anyone has any other questions, please ask them in #ubuntu-classroom-chat
[19:40] <Cheri703> Well, thank you again to Dolasilla for your time and presentation!
[19:40] <Dolasilla> My pleasure!
[19:40] <Cheri703> As always we'll have the logs linked at http://wiki.ubuntu-women.org/CareerDays and we'll post them to the Ubuntu Women blog as well.
[19:40] <Dolasilla> thanks to you!
[19:41] <Cheri703> If anyone has any further questions after reading through the logs, definitely feel free to contact the UW Team through the contact info on the CareerDays page.
[19:43] <Dolasilla> Bye everyone, feel free to contact me for any further question!
[19:50] <ClassBot> There are 10 minutes remaining in the current session.
[19:55] <ClassBot> There are 5 minutes remaining in the current session.
[20:00] <ClassBot> Logs for this session will be available at http://irclogs.ubuntu.com/2012/10/18/%23ubuntu-classroom.html