First I want to apologise because this post will be a bit long. But I promise it will be worth reading :)
Sometimes ago I wrote about our webdesktop platform in this. A very old
demo can be found here (
desk.ahome-it.com). A new one is coming soon :).
Ahomé Desk is a cloud based personal workspace.
See it like a intelligent layer over the things you care the most. All
your online activities in one place. Keep in sync across devices and
platform,
A place to call Home :)
We wrote about it in our blog post a couple of months ago (
http://www.ahome-it.com/newage/)
As we are preparing for the public beta release expect more infos soon.
For the next year (mid 2017) we will be opening an engineering office
in Douala (Cameroon) and we are looking for Software Engineers that
would love to work with us
on exciting stuff.
Not only will you be working on the Ahomé Desk Platform which will be used by millions of people around the world.
You will also work on Ahome Desk for business wgich is already in used in a lot of big companies around the globe.
Ahomé Desk is available on every platform so you will be working on web, desktop, and mobile (Android, iOS, Windows)
On top of that you will be working on creating tools that are use by millions of developers worldwide.
Look at our opensource page to see what are the tools we created over the last past years (
http://opensource.ahome-it.com/)
This tools are powering some of the biggest business worldwide and you can help making them even better.
What can you expect from us ?
1) A competitive salary.
2 ) Mac, Linux or Window PC at choice + Mobile devices if you are working on a mobile project.
3) Working in fast moving startup working on exciting technologies.
4) An international Team spread across Cameroon and Germany.
5) Build international Software at scale.
6) Lots of Goodies :)
What do we expect from You
Responsibilities
- Design, develop, test, deploy, maintain and improve software.
- Manage individual project priorities, deadlines and deliverables.
Minimum qualifications
- BS degree in Computer Science, similar technical field of study or equivalent practical experience.
- Software development experience in one or more general purpose programming languages.
- Experience
working with two or more from the following: web application
development, Unix/Linux environments, mobile application development,
distributed and parallel systems, machine learning, information
retrieval, natural language processing, networking, developing large
software systems, and/or security software development.
- Working proficiency and communication skills in verbal and written English.
Preferred qualifications
- Master’s, PhD degree, further education or experience in engineering, computer science or other technical related field.
- Experience
with one or more general purpose programming languages including but
not limited to: Java, C/C++, C#, Objective C, Python, JavaScript, or Go.
- Interest and ability to learn other coding languages as needed.
If you are going to apply (and we hope you do) Please keep the following in mind.
1) The office will open mid 2017. So dont be surprise if you application takes a bit long. We will answer each candidate
2) While we value CVs We value practical work even more. So If you can
show us some code (GitHub account for example) this will be great
3) You DONT have to have a degree. If you feel you are a good engineer PLEASE PLEAE PLEASE APPLY !
4) For Engineering Positions we expect the following :
4.1 )
Coding: You should know at least one programming language really well, preferably C++ or Java.
4.2
) Algorithms: You will be expected to know the complexity of an
algorithm and how you can improve/change it. Big-O notations also known
as the run time characteristic of an algorithm.
4.3)
Sorting : What common sorting functions are there? On what kind
of input data are they efficient, when are they not? What does
efficiency mean in these cases in terms of runtime and
space used? E.g. in exceptional cases insertion-sort or radix-sort are
much better than the generic QuickSort / MergeSort / HeapSort answers.
4.4 )
Data structures: You should study up on as many other
structures and algorithms as possible. You should especially know about
the most famous classes of NP-complete problems, such as
traveling salesman and the knapsack problem. Be able to recognize them
when an interviewer asks you in disguise. Find out what NP-complete
means. You will also need to know about Trees, basic
tree construction, traversal and manipulation algorithms, hash tables, stacks, arrays, linked lists, priority queues.
4.5 )
System design: System design questions are used to assess a
candidate's ability to combine knowledge, theory, experience and
judgement toward solving a real-world engineering problem.
You will work with your interviewer to create a high-level system and at times perhaps dive deeper
into particularly areas or issues. Sample topics include: features sets, interfaces, class hierarchies,
distributed systems, designing a system under certain constraints, simplicity, limitations,
robustness and tradeoffs. You should also have an understanding of how the internet actually works and being familiar with
the various pieces (routers, domain name servers, load balancers, firewalls, etc.). our whole business is
built around it, make sure you understand it and know how it works
4.6 )
Front end engineers: Refresh JavaScript skills, CSS, AJAX,
HTML, GWT and EXT JS. Understand user-interfacing and techniques. Have a
good sense of how the front and back interact and tie
together. Cross Browser knowledge could also help.
If we wake you interest please send me an E-Mail to
eka...@ahome-it.com or
jazzma...@gmail.com.
I hope to hear from you soon
Regards,
Alain