Staffing needs

From LSDevLinux
Revision as of 16:15, 30 August 2011 by Mayhewn (talk | contribs) (Improve Balsa description)

Jump to: navigation, search

We often get asked about opportunities to join our team, and what kind of skills are needed. Here is some introductory information. Read About LSDevLinux first, however.

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:

  • Translation Editor, a WYSIWYG word-processor for Scripture (part of the FieldWorks suite)
  • Flex, the FieldWorks Lexical Explorer used for vernacular text analysis and lexicography
  • Translator’s Workplace, an electronic library of reference materials
  • SpeechAnalyzer, a tool for acoustic phonetics and phonology
  • Balsa, a customized, pre-configured Linux system that provides a translation drafting environment for mother-tongue translators

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.

There are opportunities to assist with our software development on a more casual basis. Open Source Development Opportunities

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 in Calgary: one Canadian, two Brits and two Americans; four guys and one woman; ages mid-20s to mid-50s. 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.