At Cake Solutions we work with our customers to build high-quality, scalable and resilient software systems using the latest technology. As a software engineer, you'll not only be able to write good, maintainable software, but also stay at the forefront of technology and advocate a principled approach to software engineering. You'll get the opportunity to work on a wide range of interesting projects for our clients, using Java, Scala, Play, and Akka.
What to expect:
To begin with, you will take part in a 2 week Typesafe certified workshop style training course where you will get introduced to Scala, Akka and Play.
You can expect a lively and challenging environment with very interesting problems to solve. We are happy to train and mentor the right people; the important thing is to have a bright mind and the motivation to question, explore and learn. Having published work, on Github or elsewhere, is extremely helpful. CVs should focus on what you really know, not what you've seen once.
If you are a graduate, we are not expecting commercial experience, but we want to see evidence of hobby / university engineering. We do, however, expect you to be independent and to have good understanding of the principles of software engineering.
You will also get flexible working hours and gym membership.
Skills & Requirements As a software engineer at Cake Solutions, you should:
-- Have a good understanding of Java and the JVM. Experience with Scala is a plus.
-- Know how to use UNIX or Linux.
-- Know how to apply object-oriented and functional programming styles to real-world software engineering.
-- Have experience with at least one database system and be aware of the wider database landscape (relational, document, key/value, graph, ...).
-Understand modern software development practices, such as testing, continuous integration and producing maintainable code.
-- Open-source contributions.
-- Modern web development experience.
-- An understanding of asynchronous and non-blocking principles.
-- Experience in writing multi-threaded software.
-- More detailed knowledge of strongly-typed functional programming (e.g. Scala, Haskell, OCaml).
-- Even more specifically, experience with Akka or Play.
About Cake Solutions Ltd Cake Solutions architects, implements and maintains modern and scalable software, which includes server-side, rich browser applications and mobile development. Alongside the software engineering and delivery, Cake Solutions provides mentoring and training services. Whatever scale of system you ask us to develop, we will deliver the entire solution, not just lines of code. We appreciate the importance of good testing,Continuous Integration and delivery, and DevOps. We motivate, mentor and guide entire teams through modern software engineering. This enables us to deliver not just software, but to transform the way organisations think about and execute software delivery.
We rely on open source software in our day-to-day development; it gives us access to very high quality code, allows us to make improvements if we need to, and provides access to excellent source of inspiration and talent. We give back to the open source community by contributing to the open source projects we use, and by publishing our own open source projects. The team have contributed various Typesafe Activator templates, and shared their expertise with Akka and Scala in Akka Patterns and Akka Extras. Outside of the Typesafe stack, we have contributed to Tru-strap, and OpenCV. The team members have also created open source projects that scratch our own itch: we have Reactive Monitor, Specs2 Spring and Scalad.
Get information on how to apply for this position.
20th ACM SIGPLAN International Conference on Functional Programming
August 30 – September 5, 2015
The 120th ACM SIGPLAN International Conference on Functional
Programming will be held in Vancouver, British Columbia, Canada on
August 30-September 5, 2015. ICFP provides a forum for researchers
and developers to hear about the latest work on the design,
implementations, principles, and uses of functional programming.
Proposals are invited for workshops (and other co-located events, such
as tutorials) to be affiliated with ICFP 2015 and sponsored by
SIGPLAN. These events should be less formal and more focused than ICFP
itself, include sessions that enable interaction among the attendees,
and foster the exchange of new ideas. The preference is for one-day
events, but other schedules can also be considered.
The workshops are scheduled to occur on August 30 (the day
before ICFP) and September 3-5 (the three days after ICFP).
Deadline for submission: November 16, 2014
Notification of acceptance: December 15, 2014
Prospective organizers of workshops or other co-located events are
invited to submit a completed workshop proposal form in plain text
format to the ICFP 2015 workshop co-chairs (Tom Schrijvers and Nicolas
Wu), via email to email@example.com by November 16,
2014. (For proposals of co-located events other than workshops, please
fill in the workshop proposal form and just leave blank any sections
that do not apply.) Please note that this is a firm deadline.
Organizers will be notified if their event proposal is accepted by
December 15, 2014, and if successful, depending on the event, they
will be asked to produce a final report after the event has taken
place that is suitable for publication in SIGPLAN Notices.
The proposal form is available at:
Further information about SIGPLAN sponsorship is available at:
The proposals will be evaluated by a committee comprising the
following members of the ICFP 2015 organising committee, together with
the members of the SIGPLAN executive committee.
Workshop Co-Chair: Tom Schrijvers (KU Leuven)
Workshop Co-Chair: Nicolas Wu (University of Oxford)
General Chair : Kathleen Fisher (Tufts University)
Program Chair: John Reppy (University of Chicago)
Any queries should be addressed to the workshop co-chairs (Tom
Schrijvers and Nicolas Wu), via email to
Function that turns a list to a list of lists with each inner list breaking off at a specific length
I am looking for a standard function that would be sort of the opposite to concat. Something such asbackwardsConcat :: Int -> [a] -> [[a]]
that works like thisbackwardsConcat 2 [1,2,3,4,5,6,7,8,9,10] [[1,2],[3,4],[5,6],[7,8],[9,10]]
Does anything similar exist?submitted by Labutsiaq
[link] [20 comments]