Software Engineer

| fenixedu.solutions

Our challenges

More than ad-hoc projects always reinventing the same problems, we enjoy technologies and patterns; and despite understanding the social interactions that generate many of the problems of software development, we believe that state-of-the-art software can balance those issues from the arise of new business needs.

Since ever we have been iterating FenixEdu-based solutions, evolving them and enabling them to work in a pure cloud-based environment, ideally as a service. But since no two customers are equal, a product-design approach is needed for the solution to shift its behavior from source code mechanisms to configuration/models.

Your contributions

Integrated in the fenixedu.solutions Projects team, you will help planning and implementing the business modules of our solutions, within our internal product-like roadmaps or within the context of customer-oriented projects.

We advocate for every software engineer to be (as possible) fluent in the business field and the customer oriented language(s), so it’s part of our duties to enrol also in non-technical tasks; it helps them but mostly ourselves, as a constant reminder of the recipients of our work. And all that common engagement is mandatory to achieve project and customer success.

Every member of our team has to carry the message and culture inbuilt in our platforms, and being all this a collective effort, we want your contribution for those shared goals. We want you to bring your enthusiasm around technology, fueled by a spirit of work ethic and collaboration, eagerness to learn and teach, so we can all continue growing together.

What we expect

We favour 3+ years of experience, ideally more, as we are searching for people with:

  • Bachelor’s Degree (pre-Bologna) or Master’s Degree in Computer Science, Software Engineering or similar field around Information Systems; even if you do not have one, but if your experience can speak for itself, consider yourself eligible
  • knowledge around software engineering principles like algorithms vs. complex data structures, object-oriented design and design strategies and patterns, both backend-oriented and UI/UX
  • experience in Java or other JVM-based languages (develop + troubleshoot + debug)
  • experience in Git-based source control and Continuous Delivery environments
  • ability to work independently and as part of a team, coordinating others if needed
  • ability to imagine, gather and structure requirements (within release management), especially involving customer/functional-based contexts
  • (nice to have) experience with Domain-Driven Design and Software Transactional Memory paradigms.

And in return …

There is a set of core values we try to rule ourselves by: excellence, discipline, efficiency, integrity, collaboration … besides that, here are the other things we consider the most important:

  • being part of a company that (resiliently) grows and innovates by itself, with that being by-choice as much as by-need; and we as individuals must grow also, no matter the path
  • competitive salary and the opportunity to evolve within our different areas (if desired)
  • freedom to pursue personal interests, attempting to balance them with the company needs and goals (having always in mind that value creation is mandatory)
  • health insurance + extra vacation/resting days
  • a shared-costs model to attend conferences and events (that might relate to our work fields and goals)
  • to be involved in collaboration projects and initiatives with academic partner institutions
  • (when possible) performance bonus, in a mix of team+individual performance vs. qubIT results

We want you to bring your enthusiasm around technology, fueled by a spirit of work ethic and collaboration, eagerness to learn and teach, so we can all continue improving together!

PS: the data you’ve decided to provide us in applying to this job position can be deleted anytime by request to data.protection@qub-it.com

Apply