At a Glance
- Tasks: Develop high-performance software solutions for geophysical data analysis and collaborate with experts.
- Company: Join a leading engineering staffing provider with a global presence.
- Benefits: Highly negotiable salary, hybrid working, and opportunities for professional growth.
- Why this job: Make an impact in geoscience while working with cutting-edge technologies.
- Qualifications: 10+ years in Java development and strong problem-solving skills required.
- Other info: Dynamic team environment with mentorship opportunities and career advancement.
The predicted salary is between 36000 - 60000 Β£ per year.
Permanent Staff Positions Location: Abingdon, just outside London. Hybrid working available, ideally 3 days based in the office.
Salary: please get in touch and I will reply straight away with salary details (highly negotiable).
Must have skills:
- Java, Eclipse RCP/SWT
- Strong problem-solving abilities
- Clear communication skills
- Evidence of being able to solve algorithmic problems
- Evidence of experience working on large monolithic thick-client applications and demonstrate how they are different than web-based applications from an engineering perspective
Very nice to have:
- Experience with using AI with development
- Domain experience (Geophysics or another geoscience related field)
Responsibilities include:
- Collaborate closely with geophysicists, data scientists, and software engineers to translate scientific domain requirements into robust on-prem or Cloud software solutions.
- Design, develop, and maintain high-performance applications for geophysical and geological data analysis, interpretation and visualization (e.g., seismic, horizon, fault, velocity model, etc.).
- Present architectural designs and technical proposals to the architecture review board.
- Ability to break down development tasks and lay out clear implementation roadmaps.
- Implement and optimize computation algorithms.
- Design and develop both thin and thick client applications that interact with cloud-based microservices.
- Ensure high code quality through unit testing, code reviews, security hardening and continuous integration with other domain tools.
- Provide technical support and lead user troubleshooting sessions to resolve issues and ensure smooth operation of DSG application.
- Mentor junior developers and actively contribute to architectural and implementation decisions.
- Embrace Agile/Scrum methodologies, delivering and demonstrating working solutions at the end of each sprint.
- Stay current with emerging technologies and trends in geophysical computing and software development.
Required Education and Skills:
- BS or MS degree in computer science, Geoscience, Applied Mathematics, or a related engineering discipline.
- Minimum of 10 years of experience in software development using Java.
- Ability to break down complex development tasks and define clear, actionable implementation of roadmaps.
- Strong Java proficiency is required.
- C++ knowledge and experience a strong benefit.
- Proficiency with development tools and environments: GitLab, Eclipse RCP/SWT, VS Code, CI/CD pipelines.
- Performance tools: VisualVM, JMC/JFR, Async.
- Operating systems: Windows and Linux.
- Hands-on experience using GitHub Copilot to accelerate code implementation and enhance development productivity.
Desired Experience:
- Knowledge with geoscience software tools and formats: SEG-Y, Landmark seismic BRICK, CMP, OpenVDS, DSG, Petrel, Kingdom, GeoFrame, or PaleoScan.
- Familiarity with cloud platforms and distributed computing: Restful API design and implementation, AWS and Azure.
- Tools for scalable data processing: Kubernetes, Spark.
- Experience with Java 2D graphics and 3D OpenGL programming.
- Experience with scientific computing libraries and frameworks: Python: NumPy, SciPy, Pandas, TensorFlow (for ML/AI), C++/Java: CUDA (for GPU acceleration), Angular or React, Microservice: Quarkus, Spring Boot, AWS API Gateway, Docker, Kubernetes.
Software Engineer employer: NES Fircroft
Contact Detail:
NES Fircroft Recruiting Team
StudySmarter Expert Advice π€«
We think this is how you could land Software Engineer
β¨Tip Number 1
Network like a pro! Reach out to your connections in the industry, attend meetups, and join online forums. You never know who might have the inside scoop on job openings or can refer you directly.
β¨Tip Number 2
Show off your skills! Create a portfolio showcasing your projects, especially those that highlight your Java expertise and problem-solving abilities. This will give potential employers a taste of what you can do.
β¨Tip Number 3
Prepare for interviews by practising common technical questions and coding challenges. Use platforms like LeetCode or HackerRank to sharpen your algorithmic skills and get comfortable with problem-solving on the spot.
β¨Tip Number 4
Donβt forget to apply through our website! Itβs the best way to ensure your application gets noticed. Plus, weβre always looking for talented individuals like you to join our team!
We think you need these skills to ace Software Engineer
Some tips for your application π«‘
Tailor Your CV: Make sure your CV highlights your Java skills and experience with Eclipse RCP/SWT. We want to see how you've tackled algorithmic problems and worked on large applications, so donβt hold back on those details!
Craft a Compelling Cover Letter: Your cover letter is your chance to shine! Use it to explain why you're the perfect fit for our team. Mention your problem-solving abilities and any relevant experience in geophysics or related fields to catch our eye.
Showcase Your Projects: If you've worked on any impressive projects, especially those involving AI or cloud solutions, make sure to include them. We love seeing real-world applications of your skills, so share links or descriptions that demonstrate your expertise.
Apply Through Our Website: We encourage you to apply directly through our website. Itβs the best way for us to receive your application and ensures youβre considered for the role. Plus, it makes the whole process smoother for everyone involved!
How to prepare for a job interview at NES Fircroft
β¨Know Your Tech Inside Out
Make sure you brush up on your Java skills and be ready to discuss Eclipse RCP/SWT in detail. Be prepared to solve algorithmic problems on the spot, as this will showcase your strong problem-solving abilities.
β¨Showcase Your Experience
Prepare examples from your past work where you've tackled large monolithic applications. Highlight how they differ from web-based applications, as this will demonstrate your understanding of the engineering perspective required for the role.
β¨Communicate Clearly
Practice explaining complex technical concepts in simple terms. Clear communication is key, especially when collaborating with geophysicists and data scientists, so make sure you can articulate your thoughts effectively.
β¨Embrace Agile Methodologies
Familiarise yourself with Agile/Scrum practices and be ready to discuss how you've delivered working solutions at the end of sprints. This will show that you can adapt to their workflow and contribute positively to the team.