[Haskell-cafe] Swedish spin-off has openings for advanced functional programmers - Haskell, OCaml, Scala, and more, Functor, the Swedish Martin-Löf type theory spinoff, is in the midst of recruiting right now, interviewing beginning already — Is it for you?

Johan Glimming j at functorgroup.com
Sun Aug 16 23:22:24 UTC 2015


Do you want to be part of the journey as the Functor startup research spin-off innovates the future of software engineering? 

Do you want to make a difference? Do you want to devote your talents where it can have incredible impact on the entire software industry? Functor, Sweden, is again looking for brilliant minds, essentially co-founders as a generous equity program will after a certain threshold time make sure developers, building the company indeed, also own what they are building. Now, for what follows, hold on to your seats a bit, and remember we are a spinoff startup still, and have no marketing department though we do have expertise in human resources, the most important resource for any company at any given time, to nourish and breed a culture of excellence at any given time at Functor.

Remote work initially is not a problem before we move those we can, though probably not all developers will be able to move, to great office space in Sweden. We have to recruit internationally for obvious reasons (read about our technology below).

There are openings at Functor Group AB, and Functor AB, Functor Consulting AB, Sweden, including also remote work, except for Scala consultants who must immediately relocate. Feel free to forward this further, and jobs at functor.se can also be used according to the final paragraph in this posting, while we favour the LinkedIn job advertisement with as many of the appendices we hope for as possible (see https://goo.gl/4agSy6 <https://goo.gl/4agSy6>).

We are in the midst of recruitment, and those who already applied please stay tuned, for others, check the following and the links further below.
Note that we use both Haskell and OCaml in our development. Functor Scalor™ heavily uses Haskell in its top layers but the Martin-Löf type theory virtual machine is written in OCaml so we need you to master functional programming at large, since OCaml is at the moment faster and has for our purposes the right libraries for LLVM bindings etcetera.

We do static analysis for embedded software with our product Functor Prevent™, and 95% of that software is written in C, just like Erlang/OTP, MySQL, IoT OSes and the Linux kernel, and numerous trending projects at GitHub, and OpenSSL where we have shown we would have prevented the Heartbleed bug and security vulnerability <http://www.bbc.co.uk/search?q=heartbleed>  the worst bug in human history in the sense of numerous metrics, whilst damages are impossible to know (you did change all your passwords, we hope), and other bugs such as the sendmail bug whereby virtually all UNIX and Linux servers where open to attack some years ago and hopefully for the most part patched today … 

Apply to work at Functor as LinkedIn job applications are still accepted now but closing soon and interviews has begun. We might need you at Functor for our success and further growth:
■ Apply from LinkedIn <https://goo.gl/ZkdMQY>, see instructions below, https://goo.gl/ZkdMQY <https://www.facebook.com/l.php?u=https%3A%2F%2Fgoo.gl%2FZkdMQY&h=-AQGfp_6ZAQFRClHjcuxiXUhwi55uXwYQjaSZynP3eJ5sgg&enc=AZMgknZdHPVT2JgFnCfIA1ysksltk-3ff4Z1WaAFglYXpKA23egLd4dL0BWswctYFmSxLpUFS6FqbSVz0_Ff-MFW-KsbG6g7xZtqIMXGpAsgcanwRAOhl4mljngN4w1RJGdiW4rpxXluah2iPnrfJIYxHe3mncf8bdkPeAo89Tz4Bg&s=1>
■ For instructions <https://goo.gl/4agSy6> read the last paragraph of the earlier LinkedIn posting: https://goo.gl/4agSy6 <https://www.facebook.com/l.php?u=https%3A%2F%2Fgoo.gl%2F4agSy6&h=NAQE9lGOoAQF3103SYFsiglgFZbMZmNoTEdEmK6zVkvTpfA&enc=AZMMjN2Cp29Rr7u63KwBcCkHQ1MvsbA3ze2Ms2wMQ82OBhmpBEczbbEIEawCPmJcuBfhGlhbJ_TWArTcZmCrTrg_6OpfRVXfYUk4iur8OrLYPShO7HDA8PRVI8HE2Djy1veggWdT5gDK-fZyxAgnfMmuM6cZsDRCT-dZI_NCXA8URA&s=1>


We use Haskell, OCaml, LLVM and our tools are closely tied to the C programming language and indeed to functional programming. Embedded software market is one target market, and skills in compiler design, type systems and operational semantics is key to our teams though we look for optimised teams as a whole, and your particular skill set may or may not include a PhD, but surely industrial experience. We have openings for Research Engineers and have some renown Research Engineers already. Research collaboration is key to our success and projects planned including a large EU project CONSTRUCTOR next year. We have strong industrial partners and some very high-profile customers internationally. The customer-driven journey is still at an early stage, while founded in 2011, and your contributions would be key to our success.
Since last year, we use OCaml for key components in both Functor Prevent™ and Functor Scalor™ lower layers, including due to LLVM bindings and for performance (both tools are exceptionally efficient. The Functor Scalor™ with the new Score™ low-level type theory machine uses OCaml. Hence, the lowest lavel is indeed pure Martin-Löf type theory. Functor Scalor™ is amazingly ultimately solid Scandinavian operational semantics adapted for a meta programming language specifically. With this core developed and then in every detail overseen by Per Martin-Löf himself, we have a reliable and state-of-the-art virtual machine. Our research adds to this a defined W-type monad creating a category with the desirable properties. Hence, on top of the solid logic core, Scalor™ has facilities to perform as fast as C in critical components. The benchmarks speak for themselves, and yet Scalor™ is a new kind of meta programming platform, aligned with the domain-driven design movement, though we have aligned it with advances in software engineering, known as domain engineering, which is an emerging new methodology giving DDD a solid foundation, but at the same time not compromising in any way, in any product, the simplicity and elegance. Programmers are not mathematicians, but inside our products you will find some seriously exciting technology to make it all possible. See www.language-driven.org <http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.language-driven.org%2F&h=DAQGprr1EAQGQp5rVuaEJTjD-Lsz6Ldj7BzzDA1SPpK-3_g&enc=AZPZuq7FFMe_kg8xzNhALPGxMKxEHoOHYP-1Y3cG1fmTHqvLNb--vO3MY5tuaNvSdA5VY9m8ESAfOuw4Gqpv_XpA7piobHtHffQ8X32bgeP3f5UlQWtTKj-52PT37aIDsATOYTQLvJ3XERRRp45ba3BEeTwq_Qq_Z7eOEn70niHOJg&s=1> and www.domain-specific.org. <http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.domain-specific.org%2F&h=CAQHpiiL_AQF3mNz90RHlbblfCppnz4w5gkDLxTxwYFjYLg&enc=AZM4_k-Ev1qI-6f8ni5tAJu4Jr5wfqDLt4k5HRoaW5MJ4hKekY3A1UeQ9bdimtMzhdAEuQI3_l1rbZfFiiqkn-r1sWsn9zv3LJE1Obhy-sR08dR9Hr57q0soTQlnLGPpkaX8-DC0Lcz40Vj6dm8D7DonKPaTyH7gMyyacE-IpWy_jw&s=1>
For this reason, we need additional brilliant OCaml developers to strengthen our teams, both for Functor Prevent™ and its program analysis with dependent types also based on solid operational semantics, and Functor Scalor™ with full-blown type theory, named the new constructive programming paradigm already back in 2012, unwittingly perhaps a name coined by Per Martin-Löf himself. Recent progress has made all this possible, and industrial productification has made it all usable in real-world applications, despite the advanced technology inside, which can be trusted, implies elegance, coherence, simplicity, and with close to zero-learning curve for Prevent™ and a lean one for Functor Scalor™.
Scala consultants will be sent straight from the top down into projects at Ericsson for very challenging work. For these three consultants we require an exceptionally strong background with Scala projects as we team up with Typesafe and secure projects that can only be matched by exceptional Scala developers. Our Functor Scalor™ is oriented somewhat differently than Scala, see www.domainspecific.org <http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.domainspecific.org%2F&h=KAQEDB0dgAQE2Dc2uF_tMWkqWfmDFi4aEnehG_dO0L3XLoA&enc=AZOXlUX-_a-2_o2ePSqcNcCB9mnM-kPQBAxjQwkj_ogymce6StWxpRqdoCTztX7MAKFUwprjsCYK4k07KVd23edH_l_knE7uajasztjN8XivJmDnDOH_jmtFpaNf8NrvUa25LVaaHGOQkZmpxAmlmMU1Tzd1mTbVAI5jZP2Xx9jUdA&s=1> for some initial information on that products that appeals to very large companies at this stage, while Functor Prevent™ is suitable for just about any software development projects, currently doing static analysis with dependent types and automatic testing for C code, such as the Erlang code base, Twitter’s MySQL branch or embedded software at large, see www.functorprevent.com <http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.functorprevent.com%2F&h=WAQGrklHEAQFiatrzY2HcmwQZGu5t_Rxu2FcyfvcVDjfe6A&enc=AZOOidx2i7y9THw1ujhC6blVhIKImlFFTHNtTsr9zkLKFYu0ZZrGXdnEjqeZEvOvsShCi_BnoyWJadHCUSvgDZKBY2inVBDlahuTqtGu2X2Xew8WBoLDZohuIC9oSTdDqf9vtlVtHh-VXHfEYA6vM1XX6NfpQyP1a6NtWM31QI9-mw&s=1> or www.static-analysis.org <http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.static-analysis.org%2F&h=MAQFryDqLAQHKpqF6voniACts3tYU5nLHFeXG0jQenyWZZA&enc=AZNkJG7ZJeCJkBovjpYmeMOKo7_vVbvjDmHUG4KHJlgZKIc8A8nswniIAtCEX_LWGHNrOgu_uUQdEVBIfnjpKK8XVLhz31wUMquDxpacfti-1Ka8vdC7S3D_DctW-NQ6dtdK4YLhwHolcICrgocEiau0vIs67Qjuv4fDP5KiaEFLBw&s=1>, and also the standalone tool www.functor.se/prevent <http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.functor.se%2Fprevent&h=MAQFryDqLAQHA_OkJTrIj-ExK2P70dgzoZops36zemHNxsQ&enc=AZM7SxyvC56cjRGMYNtHaYaiM9yJBrHRemz2NlwNIkUEXLsK5A0orrdCKlZphO9xCx6e9VuUvvPsZu2_zu2fSydwedE-u0JREH6inqVBBfQ5vNLuIG25Ln0lf3aN8e9p05jp3oGg6V8_3GeSByuc5yVuPoPtA3HGuSF1JVar5A9M4Q&s=1> which secures systems including a project at a customer with a range of 100 MEUR/each equipment investments, all relying on the VxWorks C code where our Functor Prevent™ delivers its value to prevent up to 50% of the bugs in certain projects, already with its current R1 feature set!

For instructions on how to best apply, what we recommend, read our pre-compaign LinkedIn posting: 
■ Openings for functional programmers at Swedish startup <https://goo.gl/4agSy6>, https://goo.gl/4agSy6 <https://www.facebook.com/l.php?u=https%3A%2F%2Fgoo.gl%2F4agSy6&h=TAQFTHNkpAQF1BSSbbpSt5qqRl9EPJ7rMx_d0ISWIznWDzQ&enc=AZNwnskCQLS9Gd8R898OrGkrjMXMKdXzjvt5lph2o0DPB-aPrSjiknYOBhGq7qP7vy7fdN1dJmL5SPmmYvgdwyV308Q3jveB0mP7eMM22nz7v69zX8UIkrr_NRLwRYOxDjT47Cm5ZirfAGARNshkjVQaffWcSZTu1eSvVDpzRN-NeA&s=1> - see instructions on last paragraph!

Read up with links above to our webpages (last link), and postings on LinkedIn and Facebook:

■ The Future of Software Engineering <https://goo.gl/mbd76F>, https://goo.gl/mbd76F <https://www.facebook.com/l.php?u=https%3A%2F%2Fgoo.gl%2Fmbd76F&h=DAQGprr1EAQG-w3zi01_LVzYQWxjVMD0CP__ByTHEAj8HoQ&enc=AZP-UD0vo-aPobVxqvFPG1s64budnnF_dv8EwmkW3Qf83x0WykHYP7udrplBNDiTOtTaUBQNpvI8iODQbTXuhJoxQ97NTgt8eBzVCiwsiUpdin-dh-i5Zi8j0dS1AZJoyR_m9WNS3FlYlxYbj46fggAC9FBvJNVEggAYYh0gBQAJNw&s=1>
■ Functor looks to strengthen leadership <https://goo.gl/rVtMLx>, https://goo.gl/rVtMLx <https://goo.gl/rVtMLx>

See also recent news media coverage of Functor, and other LinkedIn postings:

■ Embedded Conference Scandinavia <https://goo.gl/1vN2Ij>, https://goo.gl/1vN2Ij <https://www.facebook.com/l.php?u=https%3A%2F%2Fgoo.gl%2F1vN2Ij&h=YAQFGOtBEAQHZF0Chpl0MIcxcLKpeQVwX0b18bROZs2vdjA&enc=AZMyYpRSdKBAYy27u1D7Zj2Cudl6WN8l28LArX0reUarc07_UCjB7fsB-gwTxmWfDENo0wN2mrQAst8B03FEsyTmFXsJcLCE-NePjVKv_2hStyZA-rD7TqTo-hHURH5K2CqZDWgY5CBKDUhh1XLNJRO7BJYkV3T0siPSJrdoluaGtQ&s=1>
■ Information for STHML TECH FEST <https://goo.gl/kANCT5>, https://goo.gl/kANCT5 <https://www.facebook.com/l.php?u=https%3A%2F%2Fgoo.gl%2FkANCT5&h=nAQE4-iyVAQGDLkh2Fj0DNrkn0_-4Q9jrgQ_A92KopHs6bg&enc=AZPu7O8GF2WvGgeSOvkOxGSGnjDFfACM33lz5QNsXPTu-kTNWWUDC-I6jnJtY4kYNupTnSHG7ZV3PDHBymuuVHys1pWmEzNrbVtRZjmLKy-4voDMjf-zXPIkS0WWRG_m9jO1J_zKkgIuvuBI6kEw8Emwe-yGlt9bfwd5Mc2E7NTClA&s=1>
■ STHML TECH FEST invitation <https://goo.gl/RzEI9H>, https://goo.gl/RzEI9H <https://www.facebook.com/l.php?u=https%3A%2F%2Fgoo.gl%2FRzEI9H&h=rAQHn7PN0AQEGOSiEFNwf4n9WzlC-JbclJoaGd6pbhl8Rrg&enc=AZNx3fKSqsvR9fv5uPD3-HcB5PfYIO1s_gzgTxppMCWmFwdPuM53cDog4Tv3whrzfg-Jh-5_fTvkY7xPpPmUyUFOK-_9jvW4cTAF6SiFBsoKouR2YEB0hN-R5dvu5JC8ijNVDoZxOgg3D9jkuWW3-j0fhpQLMe_sa9RBpKJyb9nAgg&s=1>

Older job campaign provides some useful further information — beware that it is not the current one:
■ Openings globally for Scala & Haskell developers, https://goo.gl/6is0xU <https://goo.gl/6is0xU>, now out-dated but can be good reading just the same for candidates!

Some of our Facebook pages, like them and see occasional posts in your own news feed as a result:
■ Functor AB <http://www.facebook.com/functor>, www.facebook.com/functor <https://www.facebook.com/functor>
■ Functor Group AB <http://www.facebook.com/functorgroup>, www.facebook.com/functorgroup <http://www.facebook.com/functorgroup> 

Join some interesting groups on Facebook and contribute:

■ Software Bugs <https://www.facebook.com/groups/softwarebugs>, https://www.facebook.com/groups/softwarebugs <https://www.facebook.com/groups/softwarebugs>

■ High-Tech Startups in Sweden <https://www.facebook.com/groups/hightechsweden/>igh-Tech Startups in Sweden <https://www.facebook.com/groups/hightechsweden/>, with the allegedly richest woman in Sweden, the acting Wallenberg family are all men, serial entrepreneur in IT already a member in this new group that we manage, https://www.facebook.com/groups/hightechsweden/ <https://www.facebook.com/groups/hightechsweden/>

■ High-Tech Startup Jobs in Sweden <https://www.facebook.com/groups/swedentech>, https://www.facebook.com/groups/swedentech <https://www.facebook.com/groups/swedentech>

We host a newly announced event sporting leaders of the largest entrepreneur networks in Sweden although just announced, welcome to join us at Hotellet in Stockholm, which is an amazing place for the kick-off. Special invites and keynote speaker, plus mingle and drinks of course, all professional in the spirit of the group description for High-Tech Startups in Sweden, which organises the event (viz. Functor AB, Functor Group AB), co-hosts to be announced:

■ High-Tech Startup Meetup Launch hosted by Functor Group AB <https://www.facebook.com/events/1631452680449642/?ref=1&action_history=%5B%7B%22surface%22:%22permalink%22,%22mechanism%22:%22surface%22,%22extra_data%22:%5B%5D%7D%5D>, all welcome within this special interest community, it’s perhaps just an airplane away?



Why dependent types then? You probably already understand this, and the reasons are numerous and far from just technical. You have surely read up on many papers such as “Why depdendent types matter?” and more. You might see why the timing is just right now, but let’s hear out what a very influential programming language contributors has to say about the problems we address and how they should be addressed:

Stroustrup didn’t quite imagine going outside C++, at least not in his Computing Reviews "Best of 2012" paper (PDF via link below). His paper on Infrastructure Software (, though, makes the case for dependent type theory and our products very strongly. John Mitchell frames his contributions very well by writing " The main goal of C++ is to provide object-oriented features in a C-based language without compromising the efficiency of C …   data abstraction and object-oriented features … better static type checking …  efficiency of compiled code …” (book reference below). Functor Scalor™ has an object-based object model derived from the Timber projects (which came out of O’Haskell) and a novel component model on top of that for low-level performance with dependently typed interfaces. Added to the domain-driven design movement and augmenting it, meaning methodological advantages of a meta programming language, Functor Scalor™ is a direct solution to the problems pinpointed by Stroustrup in IEEE Computer, January, 2012:

■ Stroustrup’s “Software Development for Infrastructure” paper selected by CR Best of 2012 : Standard C++ <https://isocpp.org/blog/2013/05/stroustrups-software-development-for-infrastructure-paper-selected-by-cr-be>, we advise strongly to skip those pages towards the end involving C++, for obvious reasons when the Constructive Programming Paradigm was coined to be the next programming paradigm in STEW 2012 co-autthored by Thorsten Altenkirch and Patrik Jansson (“What is the next programming paradigm?”, STEW 2012).

Let’s also cite Löh, McBride and Swierstra in a paper that is probably familiar to all of you:

"Most functional programmers are hesitant to program with dependent types. It is said that type checking becomes undecidable; the type checker will always loop; and that dependent types are just really, really, hard. The same programmers, however, are perfectly happy to program with a ghastly hodgepodge of complex type system extensions. Current Haskell implementations, for instance, support generalized algebraic data types, multi-parameter type classes with functional dependencies, associated types and type families, impredicative higher-ranked types, and there are even more extensions on the way. Programmers seem to be willing to go to great lengths just to avoid dependent types. One of the major barriers preventing the further proliferation of dependent types is a lack of understanding amongst the general functional programming community. While, by now, there are quite a few good experimental tools and programming languages based on dependent types, it is hard to grasp how these tools actually work. A significant part of the literature available on dependent types is written by type theorists for other type theorists to read. As a result, these papers are often not easily accessible to functional programmers.”

Löh et al, A tutorial implementation of a dependently typed lambda calculus <http://www.andres-loeh.de/LambdaPi/LambdaPi.pdf> († <http://content.iospress.com/articles/fundamenta-informaticae/fi102-2-03>), Fundamenta Informaticae, no. 2 (vol.102), 2010, pp. 177-207. See also this link <http://www.andres-loeh.de/LambdaPi/> if you wish.

As we are developers, bringing cutting-edge technology and a mountain of research right into the industry, standing on the shoulders of giants and work done during four decades, you may enjoy also eg this article:

■ Sheard et al, Language-based verification will change the world <http://dl.acm.org/citation.cfm?id=1882432>, ACM proceedings of the FSE/SDP, Future of software engineering research, SIGSOFT/FSE'10 18th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE-18), 2010, ACM Press. (PDF <http://www.seas.upenn.edu/~sweirich/papers/foser10.pdf>)


Not to in any way diminish the contributions of Bjarne Stroustrup we include this image courtesy of Google Books, click to read the book about why C++ is not up to the tasks that Functor Scalor™ and Functor Prevent™ are. C++ has had great impact on the software community and is still heavily used. That said, John Mitchell lists numerous shortcomings in the book, but we honour Stroustrup in this manner:


John Mitchell writes (Concepts of Programming Languages, Cambridge University Press, 2002):

"C++ is an object-oriented extension of the C language. It was originally called C with classes , with the name C++ originating around 1984. A Bell Laboratories researcher interested in simulation, Bjarne Stroustrup began the C++ project in the early 1980s. His goal was to add objects and classes to C, using his experience with Simula as the basis for the design. The design and implementation of C++ was originally a one-person effort, with no apparent intent to produce a commercial product. However, as interest in objects and program structure grew over the course of the 1980s, C++ became popular and widely used. In the 1990s, C++ became the most widely used object-oriented language, with good compilers and development environments available for the Macintosh, PC, and Unix-based workstations."

We are not using C++ in any of our products, but honour the historical importance of Stroustrup.

You’ll find us easily on Twitter, @functors, @functorgroup, @functortech, etc!

PS. Servers are again considerably boosted / upgraded this very night (CET), but subscribe to newsletter.functorgroup.com <http://newsletter.functorgroup.com/> and you’ll receive a message when the server work is completed, and for rare but then important news from us in the future. Our real, non-backup site deserves a careful read through before you apply, we strongly recommend this as you would have to share our vision and believe in it too. Some links in this email may not work until tomorrow as we host everything on our own secure very powerful HP servers, hosting very sensitive customer code from companies you are familiar to should we disclose their name, and therefore have invested in our servers again. 

Be sure to check back on the links such as domain-specific.org <http://domain-specific.org/> and so on and indeed www.functorgroup.com <http://www.functorgroup.com/> tomorrow CET when we open the firewall again and liberate our work horses, then even stronger. Compile time with Haskell is not as blazingly fast as running Functor Prevent™, for all the good reasons, and therefore you will benefit from 48 processors and more when working on our servers.

Yours Sincerely,

Johan Glimming


Dr Johan Glimming

Chief Executive Officer at Functor AB, Chairman at Functor Group AB

LinkedIn:	se.linkedin.com/in/glimming <http://se.linkedin.com/in/glimming> 

Functor AB, Box 7070, 164 07 Kista, SWEDEN <x-apple-data-detectors://3/1>, tel. +46-8-55005500 <tel:+46-8-55005500>

Web:	www.functorgroup.com <http://www.functorgroup.com/>
Twitter:	@functors <https://www.twitter.com/functors/>

UK tel:	+44-1223-911400 <tel:+44-1223-911400>
US tel:	+1-(415)-513-0090 <skype:+1-(415)-513-0090>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150817/8e2432a3/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Type: image/jpeg
Size: 55252 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150817/8e2432a3/attachment-0002.jpeg>
-------------- next part --------------
A non-text attachment was scrubbed...
Type: image/jpeg
Size: 46048 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150817/8e2432a3/attachment-0003.jpeg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PastedGraphic-13.png
Type: image/png
Size: 29003 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150817/8e2432a3/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PastedGraphic-15.png
Type: image/png
Size: 299312 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150817/8e2432a3/attachment-0003.png>

More information about the Haskell-Cafe mailing list