The Senior Software Developer will join a growing team of developers in Glasgow, UK which are developing graphical user interfaces, visualization, documentation, tests, and work in all other aspects of scientific code development for both 2D and 3D simulation. The role will involve all areas of the Software development lifecycle with the main focus being the development of new application functionality and maintenance of the current code base. In addition, the candidate will have the opportunity to work with and mentor more junior software developers to help them improve their knowledge and skillset. Taking on this role will see the candidate join a team of programmers, engineers, and scientists involved in the development of future commercial OnScale software packages that will disrupt the finite element analysis industry.
At OnScale, you’ll join a dynamic, entrepreneurial team of world-class scientists, engineers, and developers focused on building the Future of Engineering. Our team comes from BioMed, Aerospace, IoT/MEMS, RF, and many other engineering disciplines.
Our plan is simple: build the world’s best computer-aided engineering platform. That means developing the best multiphysics solvers, the best optimization algorithms, the best highly-paralyzed Cloud HPC system, the best GUIs/Plugins, etc. We thrive on accomplishment, we move fast as a team, and we’re looking for rockstars to join us.
OnScale headquarters is located in the heart of Silicon Valley, a stone’s throw from some of our biggest and best customers in the BioMed, IoT, RF, and general hardware space. We have a satellite office in the UK where we build GUIs, plugins, web apps, etc. We offer all of the perks of a Silicon Valley high-tech early stage company: competitive salaries, professional development plan and bonuses, equity, and benefits.
- Translate product requirements from the product owner’s in Cupertino and Glasgow into actionable and trackable development items.
- Provide daily progress updates, making use of the tools available (JIRA, confluence, Hipchat etc) and via the daily scrum meetings, to the Software Lead in Glasgow
- Report progress to the Cupertino team on weekly update calls.
- Encourage the agile spirit and contribute to positive team morale in the midst of challenging project deadlines.
- Help with mentoring junior team members so that they excel at their jobs and advance in their careers
- Provide software development/computer science support to multidisciplinary teams.
- Identify and capture requirements, design and implement software solutions that are maintainable, extensible, and follow best practices for high performance scientific computing software, working in collaboration with customers and team members.
- Document methods and implementation in developer repository, user manuals, and in informal and formal presentations.
- Maintain and improve existing software UIs, as well as develop new software.
- Effectively manage concurrent technical tasks under demanding timelines.
- Experience working effectively in a development team environment, as well as independently.
- Bachelor degree, or higher, in Computer Science, or related technical discipline.
- 5+ years of commercial experience.
- Experience developing in a C-Style Object-Orientated language, preferably C++ with experience utilising STL.
- Strong understanding of Object-Oriented software design practices and methodologies (templates inheritance, polymorphism, data management etc.)
- Experience with software management tools, such as version control (CVS, GIT etc.)
- UX/UI design and development experience, with experience utilizing Qt highly sought after.
- Experience in modern graphics rendering techniques and an understanding of the programmable pipeline would be ideal.
- Experience testing and debugging complex problems on a large code system.
- Highly organized with critical attention to detail and strong problem solving skills.
- Positive and self-motivated individual with a willingness to self-teach new and advanced software methods and techniques; coaching and instruction will be provided, but we we’re interested in those who are keen to expand their own knowledgebase.
- Effective verbal and written communication.
- Experience or familiarity with VTK.
- Experience programming with FORTRAN.
- Experience developing with Cloud technologies and scripting languages (Python, Java etc.)
- Knowledge of any FEA or CAD software such as ANSYS, Abaqus, Hypermesh etc.
- Parallel computing experience (familiarity with MPI, OpenMP, and threading)
- Potential 15% Annual Bonus
- 25 days annual leave
- 10 days statutory public holidays
- Auto enrolment in Company pension scheme with company contribution
- Enrolment in Company Healthcare scheme
- Long term disability/income protection insurance
- Perks – Meals/Snacks, Beer Fridays, Lunch-N-Learns