My relocation and work in Australia
There were many posts about the move, the pig Peter does not know peace in Russia, he decided to tell about his experience of moving and working in Australia, maybe it will be interesting to someone. I really like it here, I hope it will help someone to find a pleasant country to settle down, or just get a cool job experience. I also think that the workflow in my company can encourage someone to experiment with the development process.
I apologize that it turned out so much and not very structured.
And yes, everything said below is just my own opinion and is not the official view of such companies as SEEK and Jora, this is what my superiors asked me to write here.
One of the reasons for choosing Australia was my long-time experience (about 14 years ago) of a business trip from Deutsche Bank to Sydney and a trip with a friend Lehoy by car for the weekend in Sydney orchestra. We left the devil knows where, drove to some national park (there are, however, only national parks around), made our way through the forest at night, shied away from strange rustling around and spent the night on the beach (which is generally not allowed, but we did not know), listening to the sound of the waves of the ocean and sticking into the starry sky above. When they walked back to the car in the morning, they discovered that the hordes of the little kangaroos, the wollabs, made noises. Then we drove back through the small towns and cooled off on the wonderful sandy beaches, watching as Australian teenagers surfed on giant waves and seagulls are hanging in the air above the sea. Then it all seemed some kind of nonsense.
The second important criterion for choosing Australia is the straightforward process for obtaining a visa. No lotteries, you collect documents, pay money, apply for a visa (I have skilled worker visa 189) and wait. I collected documents for a long time, I have a lot of experience (it was ~ 16 years old) and from each job I had to get a reference (I regret that I didn’t do it from the very beginning), to pass the IELTS, that's all.
They waited for a response for a long time, exactly a year, nothing came, they wrote to them, there they were obliged to answer for a while, as soon as they wrote them, what kind of fig, immediately came the answer and gave PR - permanent residence. If you live there for 4 years, they will give citizenship. They sold everything they had and bought a one-way ticket to Melbourne. We had about 20 thousand dollars.
Melbourne was chosen because the wife sings and was about to go to study, Melbourne is in some sense Peter, the cultural capital of Australia. She eventually found a part-time job and finished studying at a local college.
Upon arrival, we moved into airbnb for two weeks, made friends with the owners, ended up renting a month from them while they were looking for housing (it’s not so easy to rent an apartment without rental experience), my wife was looking for an apartment all the time, I was looking for a job.
I was looking for work through recruiters, stupidly posted my contacts on LinkedIn along with a human resume, a million people came, fought for me, there were no problems with options. Even now, once a week, someone calls, I politely say that I like the current place of work and I will be glad to talk with them in a year.
I was surprised by the hiring process, a month before the move, I was handed to Facebook, I went to London and failed the interview, could not bear the stress of solving the problems at the blackboard, I can’t stand the assessment and exam very well, here in Australia it was surprisingly unlike. It was not even like hiring in Russia when you ask a candidate to tell how a hashmap is arranged or what methods there are in the Object class (Java) and what they do (always a great start to the conversation).
Nobody asked about the knowledge of libraries, algorithms, people just asked about past work experience, what they did, what problems they solved, how they communicated at previous places of work, it was very comfortable.
In one of the places, the team was looking for a Scala guru (which I definitely am not) and I refused due to the fact that the guys who interviewed me (asked about how to use Scala in their project) smelled very unpleasant. It was not that I was some kind of snob, I myself grew up in a rather gopnichesky district of Lobnya, near Moscow, but it seemed suspicious and decided not to risk it.
Another interesting experience was when interviewing the bank. In general, I decided that I was looking for a job in something with the culture of startups (thanks to the past experience of Robot Loves You, aka Luke, hello, Theme!) And was not going to go to financial institutions, where I spent most of my experience. But the recruiter called, I decided to talk to him and she gave me an interview. The man was not technical. The only technical question she asked me was dependency injection - as I understand it, what are its advantages.
I must say that in Deutsche Bank in the cult project XOL my colleague and I had no spring, or rather, it just appeared, programmed something similar based on JMX and it worked very cool, with dependencies and everything, with the configuration on XML . I do not know what I said wrong to her, but she called back and said that the person with my knowledge does not suit them. I suspect that I did not say any magic formula that was written to her. It is not clear where you can screw up in a conversation about dependency injection. In any case, I think that it’s not difficult to get a job in banks, according to rumors money is paid more, but the projects are not so high, often on ancient technologies. But these are all rumors, I will be glad if someone corrects me.
In the end, I had two offers, in a large Aconex company (Java) and in a startup-like Jora (Ruby). There was a difficult moment, I could not choose, recruiters pressed on me, demanded a solution and the final factor was that I was credited to the Jora before the Christmas holidays, and in Aconex only after the new year and the money was already running out. I really didn’t have a penny of money when I received my first salary (more than once they told me that when I first moved a lot of money, I was inclined to think, we just relaxed and didn’t save at first, but it was great) .
In Jora, the main part of the interview was a test task about a robot, if anyone is interested, I will write separately in the comments. I was offered to write it in any language, but I decided to pee themselves, over the weekend I was concerned about Ruby and sent a solution. In the last interview I came to the office, took part in the morning stand and together with my future colleague made changes to my program - we have this main check that the person is an adequate and normal programmer. As a result, I accepted the offer and went to work.
Jobs at SEEK / Jora
Jora is a small company with all the attributes of a startup, inside a large company SEEK, which occupies most of the job search market in Australia and in other parts of the market, Asia, America.
In addition, we are a sort of laboratory of new technologies, which are first tested on us, and then introduced into the main brand. We don’t bring money, SEEK bothers us, but we grow a bunch of job announcements all over the world and use super-modern technologies that develop our projects and SEEK projects.
Mostly development is done on Ruby, the main site on rails, infrastructure in AWS, about a couple of hundred boxes in production, we use many services from Amazon, Postgres, Mongo (for geocoding), Redhsift, Periscope (for analytics), Datadog, Rollbar, Kibana , Opsgenie (for support) there are projects on Go, there is one loved one on Сlojure, a colleague zamgglil at a good time, but, I'm afraid, he will soon be disassembled into logs.
The team is distributed, half of the people work from Sydney, half from Melbourne, morning stand-ups go on hangouts (now meet) on the big screen, each team member can drive to a different city two times a year and work in another office for several days, the company pays. Part of the operations team is the people who add new sites, support crawlers, translate into other languages. A total of 40 people in a team, 18 nationalities, a lot of ethnic jokes, we love pseudo-war between Brazilians and Argentines :)
Weekly cycle, stand-ups at 10 am, many work from 9 to 5, you can work from home one day a week, every Tuesday planning, when we look at what we have done (now the speed is about 30 tickets per week), sprints rarely end fully, up to half of the unfinished tasks may remain. In general, the process is some kind of a mixture of kanban with scrum, it does not particularly soar anybody, new epics are added to the planning, they look, which epics have ended, which are still being monitored. There are two people rotated per week for dev-on-call, support, they are supposed to do technical debt tasks or simply help operations or solve production problems, although everyone here helps them.
The epic has a responsible developer, but there are several people working on the epic, there is a kick-off process, when participants sit down and discuss what needs to be done, what tasks, and how much to do, when there is a process to hand over a team strategy, when they show that was done, usually part of the handover is a demonstration of dashboards in Periscope, where you can see the data, how the change affected the work of the project, how the engagement changes, there are a couple of analysts who help to process it all and follow all the dashboards used (Periscope is different tool).
About estimeyty ask, like when you finish the epic, but it's all on a very strange, still unusual level, if suddenly something blunt and something difficult got out, no one will bury it. In general, there is no such control as there are no deadlines, with rare exceptions. Everything is cool and they are eager to do everything well, if there is a delay, usually they just say about it and everything can throw some help if needed.
Separately made epic lights on the jukebox (such as playing old hits) - the person responsible for the epic makes a small presentation on Friday (on Friday SEEK opens refrigerators with wine and beer and the whole company drinks and talks), tells the company about what they have done and shows the changes the whole team. Often complex, requiring discussion, features are discussed at the same presentations so that people share their doubts and ideas. Sometimes people just give lectures on how to earn bonuses from credit cards or how they traveled to Paris (photo display).
Communication is mainly through Slack, the development process itself goes through the githab, as usual, we do PR, we often work in pairs, it’s quite common to call the colleague and edit the code in a pair through the shared screen, it happens for several such sessions a day, PR goes to Development of the Slak channel, after two approvals, you can be merged into the master and after all the tests have been completed, you can deploy to production. On some days, the production will continue to be released continuously, every 10 minutes a new feature. We write about changes in the feature_release channel - we explain with non-technical language what has been done, everyone reads it.
There is a retrospective process, it is interesting that it is not something super formal, rather it is important that people discuss problems and suggest some changes. Usually we have a spread with three sections, with a smiley, with a surprised smiley and with a sad smiley, people write there some points, often jokes - which is joyful, surprised that they don’t like it, then they discuss everything, then vote, three points per person, review the three most marked points, discuss, search for decisions, assign a responsible person.
Quite often, those responsible are slaughtered and reminded of them (at the beginning of the session they look at what happened in the past retrospective). Despite the fact that the process personally seems to me razdolbaysky, several times in the last two years, the retrospective led to a change in the overall process, some rules appeared about the review of PR, differently began to hold stand-ups (for example, those responsible for epics say that it was done in them, and then at the end separately asked all the team members whether they had something to say, before that there was a classic process, when everyone spoke about himself). The retrospective works, but in some unthinkable way for me.
The PR review process is pretty harsh, for me it was a separate challenge. I still think that this is the difference between the Java developer mentality that I was from the Ruby process. Beg here lyrical digression.
Lyrical digression: what am I doing wrong?
I have quite a lot of Java development experience, I worked at Deutsche Bank, at Renaissance Capital and at the Moscow Exchange, I had about 16 years of experience before the move. I grew up on Martin Fowler, on Gang of Four and my basic approach to development is quite simple - write tests, make a feature in the simplest and most compact way that everything is hidden, no tricky pieces of code. If someone complements your feature, it should be easy to sit down and zarefachit your code so that you can add its piece of functionality to the existing code.
But my colleagues see it all wrong. I think this is a Ruby community feature and Sandy Metz's influence (she has a couple of phrases that contradict her approach, btw, but the book is pretty darn good), they require that everything is done right from the start, SOLID, and sometimes my PR collected 100 comments (the average number of comments on a PR in a project is 10), it so happened that it was difficult to open a PR in a github. You have to make two classes out of each method, although it is unlikely that anyone will ever need these classes, but this will be SOLID.
I'm still not sure that this is the right approach, but I study Ruby and try to follow the advice of my comrades, although sometimes it seems insane. In any case, I overcame this difficulty and now my PR flies by a bullet, but the sediment remained :) I had to retrain and start making thousands of classes for every sneeze.
On the other hand, I am very impressed with the rspec test package, this is just a fairy tale. When I began to do something personal on Scala, I directly felt naked when I realized that there was no such level of flexibility of the test library. Ruby rules in tests, all these contexts, redefinition of variables with let, we have an unreal number of tests (~ 5K in the main project) covering all possible scenarios and no testers at all, they looked at me as insane when I asked if there was a team QA.
In any case, the development is fun, everything is super polite, at worst you are told that the code works, but it would be better to redo everything into such and such components and use such approaches, you do not really agree, call up and you will refactor together existing code. In the end, you tell each other how cool everything is, make fun of each other and deploy PR on a slake with a shared screen. The level of programmers is astounding, I still try to recover from my complexes, that I am one of the oldest (I turned 40 this year) and am still learning to program from my colleagues who are 30 years old.
About company culture
This is probably the main reason why I wanted to write this post. I have not seen this in Russia and am very glad that I got here.
First of all, communication with the management. Nobody believes that the manager is the main person in the project, respect for them comes primarily from the fact that they really rummage about what is happening, and in general there is no special hierarchy, you see him as a person who knows more than you in strategic plan and which can point you to some factors about which you may not know. My Tim lead, let's call him Dumbledore, is constantly trying to wean me from this hierarchy (I always asked him first to make some important decision) and convince me that I can usually make a global decision myself. My colleagues are doing this, for now I’m just learning.
One of the things that I take for myself, I myself was the lead leader for most of my experience, these are dedicated meetings for personal catch up for each team member - Dumbledore and I just go for a walk in the park and talk about the project and what excites me that excites him. This is his zaskeduleno for all team members, while this is not something tough, he usually asks - do you want to go to the floor? I sometimes call him jokingly as my personal psychotherapist, but it works fine and he quietly resolved a couple of conflicts in this way, simply by communicating with people.
Generally, hiring people was built in some very non-verbal way with us, I was at several interviews and this is full of mimmi, everything is very nice and pleasant, but sometimes someone says - this person does not suit us, he is too harsh, but this is not very self-assured. Another manager asked my question how they manage to recruit such tough guys simply - we dont hire assholes (which, of course, is not quite true, but I am very impressed by the motive). This is very different from the process of hiring in Russia, and I once hired about 50 people and this is not how it happens here, it is very interesting to watch. As a fact, for the past two years I have only seen one mistake of hiring in the project (in my opinion).
Each epic team includes a couple of managers or a manager and an analyst and they really work on it, analyze, give out ideas or answer questions instead of preparing a regular report to the authorities. When you have finished an epic and zadenoveril it to them, they monitor, look at the data, take responsibility for its completion.
Then just social life. The whole project is one big family. Not everything is perfect, there is someone who dislikes someone, there are dramas, but this is somehow relaxed, everything is still friendly, sociable and positive in work.
At lunch, we buy food and come to eat at one big table, we prattle about everything that comes to mind, kindly scoff at each other, teasing. Recently it was like this - my colleague and I are going to drive to Uluru, the center of Australia, a big hike through the desert, I bought radios to communicate, went to buy food at lunch, asked him to contact me to check how new radios work, this The reptile asked a colleague an Australian girl to answer me with an official voice that I occupy the emergency frequency. There was a moment of horror, here the penalty for such things is 2 thousand dollars, I crap a little :) burned in time, realized that we were talking on channel 64, and the rescue, it seemed like 7.
The people are stuck on FIFA on PS4, I sit with my back to a big TV, where someone always cuts at lunch, an eternal joke about the French in our team, who are very passionately losing to other candidates, constant thrash talk. People come from other SEEK projects to measure their strength. There is a table tennis table.
In the mornings, after a stand-up we drink coffee, we have barber cars on each floor here, we make our own coffee, in Sydney (their office is smaller), even at the expense of the company, comrades came to teach how to do it correctly, we have an excellent people doing coffee, as in the best cafes in London. Morning snacks, toasts, fruits, vegemite, honey, that's all - on each floor, the whole company occupies a 6-storey building in Melbourne. There is a “shop” where you can easily take batteries for wireless mice, and other office junk. You can order delivery from online stores directly to the reception desk, you receive a letter, get up and pick up your package in a special room, eat ice cream and nuts for a dollar (in principle, you can not pay).
In Jora, semi-offsite happens every six months, when the whole team is taken out somewhere (alternating between Melbourne and Sydney) and we communicate there, listen to presentations from different teams, play stupid but very funny quizzes, get drunk in taverns and sing karaoke. The last time we collected Jora band, brought equipment for the team, drummers, bass, keys, guitars, microphones and staged a concert, I was the vocalist, sang "Living on a prayer" and other songs Guns'n'roses, and my timblid I bought myself a lotion, where I had to change the effect with my voice and played solo, it was awesome cool.
One of the amazing things to me is the atmosphere of support, people slam you for any sneezee, order a birthday cake and all together (including a remote office) sing happy birthday to you with the obligatory Australian triple hip-hip-hooray. I made a feature and told how it works - they clap for you, a child was born, told you - they clap for you.
SEEK itself, where we live, as I have already said, opens refrigerators with wine and beer every Friday for people to hang out and talk, it’s generally very difficult to work on Fridays, often at the end of the working day, play board games or poker.
There are corporate events, races / races in Ironman (our boss last held him twice a day, a peasant 60 years old, 6 children), Christmas costumed parties, annual reports, when after the speech of the big boss they are given strange competitions and they run on stage and do strange things on the fun of the great hall of all subordinates.
Vacation days are normal, there are some number of days that you take on vacation, you can also get sick for another day, but if you have more than a day, you should go to the doctor, the schedule is unlimited, in the sense that no one watches you work 8 hours a day, to be honest, I work from 10 to 5.30 and sometimes I leave earlier, if I really want to, sometimes you can become insolent and say that you are sick, you need to rest, then everyone writes you a giant sheet in Slake with regards to recovery. True, it is necessary to register this case in the internal system, but did not see a case in which it was to the detriment of someone. You can buy additional leave - this is the same as at your own expense, but this is spread on the annual salary and you do not lose a lot by the month.
Colleagues sometimes take harsh vacations for a couple of months, recently a colleague drove to America for a month and a half, like nothing. I understand that he took half at his own expense.
In general, for the first time I see a large corporation, where such a complex and interesting culture and people do not want to leave, simply because it is such a cool place of work.
Finally, about other companies. I have not worked anywhere else in Australia, but I heard that SEEK is one of the best companies here in terms of work conditions, there’s still something like REA - a real estate company, it's about the same thing. The company, where I was called parallel with Jora, Aconex, was bought by someone (in my opinion, Oracle) and the people fled from it, we hired a couple of people from it. I know that in the banks pay more, but there is no such level of corporate culture.
There are downsides. A salary increase is made once a year in the form of a percentage increase - about 3-5 percent, depending on what the management considers correct, that is, it is unlikely that you will be able to raise the pay sharply. But you can go into contracting - there are some unrealistic salaries there (about 1000 AUD per day, but there are no vacations and sick leaves, many switch to this scheme, usually full stack is required)
The first impression can be formulated as follows - it is clear where the taxes go. For example, in almost any park there is a free electric barbecue, you just go there with friends, beer and sausages, press a button and fry meat. There are also roads, I recently drove to Russia to my parents and realized that I no longer want to drive a car here, in my native town I tried to turn left and realized that there were no lanes and it was not clear where to get up at a crossroads, it’s not that a problem, but enrages that you have to think about it.
Immediately on any road to turn to the right there is a special pocket, there is no such thing that you drive and drive and suddenly everything in your lane turns to the right. If you drive through the forest at night, then the whole road in the headlights turns into a computer game - there are light dividers not only in the middle, but also along the edges, and with rattles, you can hear if you drive in on the edge. And this is EVERYWHERE, at least wherever I traveled in the state of Victoria. I saw only one road with pits in terrible Zazhopinsk and there was a sign that they would soon fix it.
One of the reasons why I left was “friendly police”, a couple of times I was simply taken away by comrades or searched without any, as it seemed to me, reasons, my talk about the law was ignored. Everyone tells me that the police are the best friend. The only time when I was smoking drunk on the platform, the cops came up to me, asked if I was ofigel, I apologized and I was allowed to quietly take the train.
I saw the hares twice, both ended up apologizing and said that he didn’t have time to fill up the card in a hurry (it was true) and there was nothing for him. A colleague exceeded the speed, the police stopped him, asked if he was driving very fast, he admitted his guilt, apologized and let him go.
In general, the sense of security rolls over, despite the fact that I live in a rather troubled area. Once, in front of my balcony, there was an abandoned house where homeless people camped and fought among themselves, called the police, they came, I went to see the talk, the police said that the dudes just squatted, they would not touch them and left. Although a month later the house was completely demolished.
It is especially good to go here for those who like to go on non-stress trips. The whole country is one big national park and the main occupation of Australians at the weekend is to get into cars or camping vans and go somewhere in the countryside to fry sausages, swim and walk.
Usually you call the park and bukayus place, it can cost from $ 20 to 80 a day, but there are free camps. Of the minuses, it is not always possible to burn a fire, here everything is serious with fires. You come and there will be a normal toilet for you, a shower, maybe a kitchen with toasters and a refrigerator, there will be a tree over your place on which koalas will hang out, in the morning a kangaroo will come to the camp, who will ponder your car, you can go to the more severe trekking in the mountains and to the hills, you will come, and there will be about a dozen families who have just come this way. You will sit around the fire and try to live.
Still, of course, the ocean. In Melbourne, the water is quite cold even in summer, but people are bathing, and in winter you can see comrades who stand knee-deep in water and communicate, God knows how they will withstand it. The water is dirty, because in Melbourne it’s a gulf, you have to go to the ocean, but it’s worth it, you can stand and watch giant waves go on you, jump into them and try to swim to the beach, body-surfing. In Sydney, the weather is better, there are the best beaches from the two cities.
I spent quite a lot of time just throwing a tent and a sleeping bag in the car and getting to some unusual place, everywhere interesting, beautiful and a lot of animals. This is one of the problems of Australia, in my opinion, wherever you go, you constantly see dead kangaroos, wollabies and wombats on the side of the road, knocking it for nothing, but it comforts that this means that there are a lot of them.
About life and money. For a two-bedroom apartment, we give 1,800 (cheaper) per month, allocating 3,000 for two to life at the rate of $ 50 per day. Going to a grocery store for a week for two is 200 bucks (AUD). We are lazy, often ordering food from Uber Eats ~ 40 dollars for two.
Expensive alcohol and cigarettes. When we drove here (both smoked) they brought two blocks, they were going to fine us at customs (only 5 packs per person), but we honestly said that we were going to quit and the customs officer let us go, asking to quit (my wife left, I smoke only when drink). Alcohol costs $ 40 for 0.7 strong, $ 20 for a bottle of wine, $ 20 for a 6-pack of beer, $ 7-15 for a pint of beer at a bar. Tobacco here is mainly smoked cigarettes - $ 30 per pack of tobacco.
In general, the cost of goods does strange things. I can afford to buy some IT shit for 100-400 bucks, and it seems mundane - but a ticket for a tram costs $ 4 and it seems a lot, people mostly (not only because of this, of course) ride bicycles . Go to the cafe - 40-80 dollars for one with a drink. What I want to say, on the other hand, somehow you perceive spending, a lot of things do not seem large and important, which in Russia seemed like a super expense. And something on the contrary seems great.
For example with cars. We bought a car for 10 thousand - a used Honda Jazz 2011. The condition is excellent, the roads are good, but the insurance costs 2,000 a year (though due to the fact that the wife only got the rights, I also included it). But for this insurance (I have included RACV roadside assistance), people will come to me anywhere in the country and will repair it, if that breaks.
That's probably all that I wanted to write, I wanted more about work, but about the general feeling of the country - a feeling of comfort, security, inclusion (there are 50 percent of migrants all over the country or people whose parents are migrants). A cool sense of locality - there is a mall in any small area, there is infrastructure, jobs, you can never go to the city center, because you have everything here. You live, work, ride around the country, bathe and look at the kangaroo. Very nice.