Advance Search

Browse Jobs

Senior Software Engineer

Posted a month ago

  • Edinburgh, Scotland
  • Any
  • External
  • Expires In 2 months
Job Description SummaryJob DescriptionStaff Software EngineerAs a Staff Software Engineer, you will contribute to developing a new generation of our critical software solutions for managing and controlling power systems as they transition to zero carbon energy. In a rapidly changing environment for power utilities worldwide, there is a strong need for innovative solutions to manage the stability, security and resilience of the power system while enabling it to accommodate ever-increasing renewable resources. You will work with a multidisciplinary group that collaborates closely with customers to develop solutions that harness the value of high-resolution data for real-time control as well as in-depth analysis. You will be involved in designing and developing modules, features or suite of features for world leading Grid Software products. You will work independently and contribute to the immediate team and other teams across the business and lead design decisions where appropriate.Location: Edinburgh, UKEducation:Bachelor's Degree in Computer Science or STEM (Science, Technology, Engineering and Math) with minimum of six years of experience in commercial software development / advanced experience (UK)Desired Technical Expertise:Master's Degree / PhD in Computer ScienceExperience working on software projects in the Energy domain (Energy Management, Oil & Gas, Power & Water)Certified Scrum Master and/or Product OwnerExperience of AI/ML techniques / methodologiesRoles and Responsibilities:Providing technical leadership and defining, developing, and evolving software in a fast-paced agile development environment using the latest software development technologies and infrastructureUnderstand whole product, its modules, and the interrelationship between them while being an expert in the assigned component or moduleIdentify the scope of the work, provide initial estimate, and justify the estimate with factsWork with Product Line Leaders (PLLs) to understand product requirements & visionDemonstrate the understanding of Agile software development lifecycle and able to distinguish the core inputs and outputs in each cycleEngage in technical discussions; participate in technical designs and present technical ideas; seek and provide feedback on design and developmentDrive design reviews, define interfaces between code modules, and apply existing technology to designsMaintain code quality through best practices, unit testing and code quality automationDemonstrate the ability to make informed technology choices after due diligence and impact assessmentArticulate the need for scalability and understand the importance of improving quality through testingBe an expert in writing code that meets standards and delivers the desired functionality using the technology selected for the projectBe an expert in assessing application performance and optimizing/improving it through design and best coding practicesBe an expert in core data structures as well as algorithms and can implement them using language of choiceTechnical Skills:Strong knowledge of Computer Science fundamentals, including data structures, analysis of algorithms, object-oriented analysis and design, software design patterns and Java coding principlesAdvanced experience of Java and Spring / Spring boot frameworks Advanced experience with micro-services architecture and web services (REST, SOAP) Hand-on experience with containerization technologies such as Docker, Kubernetes, and HelmHands-on experience with web development using JavaScript, ideally TypeScript and Angular Experience with languages such as Golang, PythonBusiness Acumen:Ability to take ownership of tasks and deliver without supervision while using their discretion to seek help when necessaryVoices opinions and presents clear rationale. Uses data or factual evidence to influenceRecognizes collaborative behaviour and participates in collaborative activitiesUnderstand the technology landscape, up to date on current technology trends and new technology, brings new ideas to the teamDisplays understanding of the project's value proposition for the customer. Shows commitment to deliver the best value proposition for the targeted customer.Learns organisation vision statement and decision-making framework. Able to understand how team and personal goals/objectives contribute to the organisation visionDemonstrates the initiative to explore alternate technology and approaches to solving problemsSkilled in breaking down problems, documenting problem statements and estimating effortsDemonstrates awareness about competitors and industry trendsHas the ability to analyse impact of technology choicesPersonal/Leadership Attributes:Demonstrates strong problem solving and organisational skillsAbility to work independently and as a strong team player including cross-functional and global teams with time-zone flexibilityAble to effectively direct and mentor others in critical thinking skills and effectively delegate workAbility to analyse complex technical user requirements and translate them to development tasksAdopts a proactive approach towards own personal and professional growth; nurtures own aspirations and ambitions and those of teammatesAbility to establish and maintain good working relationships with colleaguesAbility to effectively deliver information both in writing and verbally and to interface with senior leadership with confidence and clarityEnsures understanding of issues and presents clear rationale. Able to speak to mutual needs and win-win solutions. Uses two-way communication to influence outcomes and ongoing resultsIdentifies misalignments with goals, objectives, and work direction against the organizational strategy. Makes suggestions to course correctContinuously measures deliverables of self and team against scheduled commitments. Effectively balances different, competing objectives#LI-NB1Additional InformationRelocation Assistance Provided: No
#J-18808-Ljbffr
Apply