Surfly (http://www.surfly.com) - Amsterdam, the Netherlands - Full-Time [Will relocate/Arrange work permit]
We are looking for a Senior Software Developer for full-time employment. You will be part of the core team helping to build and architect the backend of our main product.
Surfly provides the easiest way to share a web page or a document on the web. Unlike traditional screen sharing it requires no installation or browser plugins and is limited to a web page rather than the whole screen. By using a smart content-rewriting proxy we allow any website to be shared, without website owners having to change them in any way.
> Implicit stack coroutines (like greenlets) can always be built on top if necessary, but they tend to require horrible things like monkey patching to work together with existing synchronous, blocking code.
that's not true. monkey patching is an optional feature that you can use with greenlet-based libraries, but you don't have to.
compare that to inlineCallbacks, where you don't have that option.
Amsterdam, the Netherlands - SiteSupport Services B. V. - Senior Python developer.
We are looking for an experienced Python developer for full-time employment. You will be part of the core team helping to build and architect the backend of our main product.
We're a funded startup located in Amsterdam, the Netherlands, developing a web based co-browsing tool that will greatly simplify online support and sales.
We offer competitive salary, good benefits, such as reimbursed conference (e.g. PyCon) travel, reimbursed costs of relocation to Amsterdam, help with getting Netherlands' work permit for those outside EU.
There are 2 possible ways for the next release
a) conservative - use libevent's http on top of libev-libevent emulation
b) reimplement them; maybe start with an http server that already uses libev, like bjoern
Conservative option might be chosen as a temporary solution if release 0.14 is delayed for too long otherwise.
I mentioned mysql-connector as an example of a complex enough library that runs with gevent via monkey patching (in reply to "gevent only solves the most simple conversions by monkey patching", which is wrong).
Have you tried gevent-MySQL? It's written in Cython and as far as I know is fast.
gevent runs most of the protocol implementations written on top of standard socket and ssl modules. For example, pure Python mysql-connector works fine with gevent.
There are contributions on the mailing list of threadpool and subprocess handling. But you're right this should be in the library - we're working on it.
Monkey patching is not mandatory. 3rd party modules can be "ported" to gevent manually as well. It's a matter of preference probably. Would like to know what better solutions you have in mind.
not sure if counts as large-scale but omegle.com uses gevent. 9257 users online currently.
We are looking for a Senior Software Developer for full-time employment. You will be part of the core team helping to build and architect the backend of our main product.
Surfly provides the easiest way to share a web page or a document on the web. Unlike traditional screen sharing it requires no installation or browser plugins and is limited to a web page rather than the whole screen. By using a smart content-rewriting proxy we allow any website to be shared, without website owners having to change them in any way.
More about the job: http://www.surfly.com/jobs/
Reach me at [email protected]