Staffing needs

From LSDevLinux
Revision as of 17:59, 22 February 2008 by Mayhewn (talk | contribs) (Add See also)

Jump to: navigation, search

We often get asked about opportunities to join our team, and what kind of skills are needed. Here's the kind of reply we usually give :-)

See also: About LSDevLinux


The mission of our group is to make language software available on Linux. Initially this consists of "porting" existing software from other platforms (typically Windows) but we hope eventually to do "Linux-first" development as well. We also develop for Mac at the same time as developing for Linux, since the two systems share a lot of technologies and it is fairly easy to program in ways that work on both system.

Our current porting projects include:

We have a number of smaller projects as well.

Most of the work is straight programming in "heavyweight" languages like C# and C++, with additional use of Python, XSLT, and SQL. We try to use XML as much as possible both for data representation and for document structuring. Some knowledge of Linux or Mac OS X is essential.

However, we do need other skills too. For example, the porting of Translator’s Workplace to Linux is mainly a document conversion task, involving XML, XSLT, HTML and CSS. We also do some of our programming in Python, which is much easier to pick up than C# or C++. In addition, there are various tasks that support the programming effort such as writing documentation, keeping people updated via our team blog and wiki, and helping users via email.

We also have future projects planned. For example, we would eventually like to develop an XML-based draft-quality Scripture publication process that translators can run on their own computers and which uses freely-available tools that run on Linux as well as Windows. This would involve some programming, but also needs someone with a good understanding of publishing.

In addition, we are currently looking for a manager. The current manager has been both manager and technical leader for a number of years now, but as the team has expanded the combination of those two roles has become too big for one person. He would like to return to doing just the technical work, which is where his strength lies, and have someone else come alongside to manage the team. It would be possible to combine this with the position of IT Manager for Wycliffe Canada, which is also open currently, or to combine it with some smaller-scale technical projects within the team. (Note: we are part of SIL International Administration, not Wycliffe Canada; this would not be one position managing two departments: it would be one person holding two part-time positions.)

Typically, there is a learning curve for people joining our team. Just how steep this is depends on how well previous experience matches up with what we do here, and the type of role the person is planning to have. Most people need to learn more programming skills, learn more about Linux, and get a grasp of the bigger picture of what software development is all about, and SIL language software development in particular. We use some cutting-edge technologies, and developing language software has a unique set of issues. So if you relish a challenge and learning lots of new things, this would be a stimulating career move for you.

Currently there are five of us: one Canadian, two Brits and two Americans; four guys and one woman; ages mid-20s to mid-50s. We will soon be joined by another guy, also a Brit. So it's a fairly varied team!

Most of the work takes place in Calgary, where we have a dynamic team environment with a lot of face-to-face interaction, including some "pair programming". We do have a few people working remotely, or part-time, but we try to avoid this wherever possible as it brings a lot of additional challenges on both sides. We usually require that new team members work in Calgary for at least the first 3-6 months, depending on existing skills. Suitability for long-term remote working very much depends on the individual's skill level and personality, and to a lesser extent on the nature of the project they are working on.

We also have people working as volunteers from time to time. While this can be very helpful, we have had widely varying degrees of success in making such arrangements work well. We much prefer to have full-time, resident developers. We do sometimes have summer student interns, however, and with suitable individuals these situations have tended to work well.

Feel free to send us questions, and get any more information you need. We want to make sure that you find the role that's best for you.