Booking.com engineers write about Perl, MySQL replication, data serialization, profiling, and production troubleshooting.
HN links it for Perl hash hardening and as a pointer to Booking.com's engineering and hiring, with Perl and Amsterdam jobs mentioned.
BOOKING.COM - Amsterdam, Seattle, Shanghai | ONSITE | VISA support| Relocation support
* Software Developer (Amsterdam) https://grnh.se/121f3a8a1
* Software Developer - Payment (Amsterdam) https://grnh.se/i04olnco1
* Software Developer & People Manager (Amsterdam) https://grnh.se/3b1rr6151
* Software Developer (Seattle) https://grnh.se/414f8a8a1
* Android Developer(Shanghai) https://grnh.se/uro7jv1
* Software Development Manager (Amsterdam) https://grnh.se/preg88f01
* Software Development Manager (Tel Aviv) https://grnh.se/jjh765fj1
* Product Owner Infra (Amsterdam) https://grnh.se/ekawg81
* Product Owner Email Infra (Amsterdam) https://grnh.se/okm54yj31
* Product Owner (Shanghai) https://grnh.se/aiycqlor1
* Site Reliability Engineer (Amsterdam) https://grnh.se/6gv0adq81
* Data Scientist – NLP (Amsterdam) https://grnh.se/2hefxqq41
PS: Booking.com take care of relocation and visa sponsorship if needed. general interview process goes as Hackerrank test, Recruiter phone interview, Technical phone interview, onsite interviews.
I work as a backend developer for more than a year at booking.com during this year I personally grow in both technical and non technical skills, the work environment is challenging but also safe.
We are a data driven Company rely heavily of A/B testing. To have more insight about what we are working on have a look at our tech blog: http://blog.booking.com/
If you have any questions or you would like me to refer you, feel free to send me an…
BOOKING.COM ONSITE Full-time, relocation to Amsterdam/ or our Tel Aviv office, (H1B or its dutch equivalent anyway) is taken care of by the company. General Interview Process -> Hackerrank test, call with the recruiter, phone interview, onsite interviews I work at Booking.com, which is a world leader in travel accommodations, as a backend developer. I have only positive things to say about working here. The people are intelligent and helpful, interesting problems to solve and the work hours are unbelievably sane. The company is strongly data driven and very dynamic, which was one of its biggest charms for me. Amsterdam is not a bad place to be either :) The Dutch government also gives a tax break through the 30% ruling to non-dutch people.
The work environment is very international and everybody speaks fluent English. The relocation process is also very finely tuned through years of experience of doing this. If you have any other questions about the company or the hiring process or you would like me to refer you, please feel free to send me an email at siddharthsarda01 at gmail.com (Email also in my profile at Hacker news).
To have an idea of the kind of problems being solved here, you can also look at our dev blog:http://blog.booking.com/
We are hiring for our headquarters office in Amsterdam:
- Backend developers - http://grnh.se/g5n6oe
- Software Developer and Team Lead - http://grnh.se/1pc5ot1
- Senior Software Developer - http://grnh.se/a7xd1v1
- Senior Java…
I can imagine some ways to armor the branch predictor, similar in principle to how languages like Perl have to include a random seed in their hash code (in some circumstances) to avoid being able to pre-compute values that will all hash to the same thing [1]. There should be some ways to relatively cheaply periodically inject such a randomization into the prediction system enough to prevent that aspect of the attack. This will cost something but probably not be noticeable to even the most performance-sensitive consumers.
But no solution leaps to mind for the problem of preventing speculative code from leaking things via cache, short of entirely preventing speculating code from being able to load things into the cache. If nobody can come up with a solution for that, that's going to cost us something to close that side channel. Not sure what though, without a really thorough profiling run.
And I'd put my metaphorical $5 down on someone finding another side channel from the speculative code; interactions with changing processor flags in a speculative execution, or interaction with some forgotten feature [2] where the speculation ends up incorrectly undone or something.
Yuck.
[1]: https://blog.booking.com/hardening-perls-hash-function.html
[2]: https://www.youtube.com/watch?v=lR0nh-TdpVg - The Memory Sinkhole - Unleashing An X86 Design Flaw Allowing Universal Privilege Escalation (Dec 29, 2015)
You may be able to get them to update to at least 5.18.0 if you tell them about CVE 2013-1667 and all the mitigations added to 5.18.0 to prevent them.
https://duckduckgo.com/?q=CVE+2013-1667&ia=about
http://blog.booking.com/hardening-perls-hash-function.html
I would also recommend reading "Modern Perl" which is made available for free by the publisher/author at http://modernperlbooks.com/
( Also there are large codebases written in Perl ( I beleive booking.com is an example )
I also recommend installing the Perl you are using outside of the system directories. You may also find Pinto and https://Stratopan.com useful for managing your dependancies. Which is especially useful if you make your codebase modular.
Backpressure was a recurring topic at Basho. I thought I might find something from one of our engineers online, but instead I found these: a look at one client’s approach for using Riak, including how they implemented their own backpressure in front of it, and Fred Hebert‘s discussion on queues and backpressure.
- https://blog.booking.com/using-riak-as-events-storage-part4.html
- https://ferd.ca/queues-don-t-fix-overload.html
It might be hard to get hired writing perl in Boulder (I checked out your profile) but if you're interested in other languages, I can do some intros for you.
Or you could always move to Amsterdam: http://blog.booking.com/