General Electric Sr Staff Database Architect in Hyderabad, India
Job Description Summary
You will be part of the core team at GE Digital Grid Software Business that is using software to enable de-carbonized future of energy for the planet by designing, building, delivering, and maintaining software applications & services for next generation Grid Software that orchestrates 40% of the world’s power today. This position is responsible for building our next generation database system, data access and integration layers to meet the intense data demands of next generation power grid software. You will be responsible for designing and implementing highly complex modules, critical components, or a whole application/product in its entirety. This position works independently and is seen as a technical leader. The position is responsible for driving the design and development efforts related to architecture, scalability, availability, and performance in alignment with the product/application roadmap for highly complex database systems for grid of the future technologies.
Roles and Responsibilities
In this role, you will:
· Be responsible for providing technical leadership and defining, developing, and building our next generation database system, data access and integration layers software in a fast paced and agile development environment.
· Drive innovation in our database systems and drive next level of performance, correctness, durability, and scalability of our data systems.
· Feel passionate about developing high performance distributed systems with focus on key database concepts like concurrency control, consensus algorithms, secondary indexes, WALs/journals, replication, serializability theory, and view maintenance
· Provide guidance to developers with either planning and execution and/or design architecture using agile methodologies such as SCRUM
· Work with Product Line Leaders (PLLs) to understand product requirements & vision
· Drive increased efficiency across the teams, eliminating duplication, leveraging product and technology reuse
· Capture system level requirements by brainstorming with CTO, Sr. Architects, Data Scientists, Businesses & Product Managers
· Leads impact assessment and decision related to technology choices, design /architectural considerations and implementation strategy.
· Subject matter expert in processes and methodologies with ability to adapt and improvise in various situations. Expert in navigating through ambiguity and prioritizing conflicting asks.
· Expert level skills in design, architecture and development, with an ability to take a deep dive in the implementation aspects if the situation demands.
· Leads the architecture and design efforts across the product / multiple product versions and is an expert in architecting custom solutions off the base product.
· Expert in core data structures as well as algorithms and can implement them using language of choice when necessary – as a value offering.
· Deep knowledge in database kernel and data management methods including B+ trees, LSM trees, Lamport clocks, etc.
· Deep knowledge in distributed systems with focus on key database concepts like concurrency control, consensus algorithms, indexing, replication, and serialization.
· Have experience building cross-platform distributed data management software
· Facilitates and coaches software engineering team sessions on requirements estimation and alternative approaches to team sizing and estimation. Leads a community of practice around estimation to share best practices among teams.
· Is open to embracing a new language/stack/polyglot
· Enjoy working remotely as part of a fully distributed team
· Evaluates technology to drive features and roadmaps. Maps technology trends to internal vision.
· Differentiates buzzwords from value proposition. Embraces technology trends that drive excellence beyond traditional practices (e.g., Test automation in lieu of traditional QA practices).
· Balances value propositions for competing stakeholders. Recommends a well-researched recommendation of buy vs. build solution.
· Conveys the value proposition for the company by assessing financial risks and gains of decisions and return on investment (ROI).
· Manages the process of building and maintaining a successful alliance. Understands and successfully applies common analytical techniques, including ROI, SWOT, and Gap analyses.
· Able to clearly articulate the business drivers relevant to a given initiative.
· Influences through others; builds direct and "behind the scenes" support for ideas.
· Pre-emptively sees downstream consequences and effectively tailors influencing strategy to support a positive outcome. Uses experts or other third parties to influence.
· Able to verbalize what is behind decisions and downstream implications. Continuously reflecting on success and failures to improve performance and decision-making.
· Understands when change is needed. Participates in technical strategy planning.
Proactively identifies and removes project obstacles or barriers on behalf of the team.
· Able to navigate accountability in a matrixed organization.
· Communicates and demonstrates a shared sense of purpose. Learns from failure.
· Able to effectively direct and mentor others in critical thinking skills.
· Proactively engages with cross-functional teams to resolve issues and design solutions using critical thinking and analysis skills and best practices.
· Finds important patterns in seemingly unrelated information.
· Influences and energizes other toward the common vision and goal.
· Maintains excitement for a process and drives to new directions of meeting the goal even when odds and setbacks render one path impassable.
· Innovates and integrates new processes and/or technology to significantly add value to GE.
· Identifies how the cost of change weighs against the benefits and advises accordingly.
· Proactively learns new solutions and processes to address seemingly unanswerable problems.
Bachelor's Degree in Computer Science or “STEM” Majors (Science, Technology, Engineering and Math) with minimum 12 years of experience.
· Must have experience building systems or components of distributed data management software with strong basics on concepts such as concurrency, indexing, replication and serialization.
· Have deep mastery of at least one of: C#, C/C++, Java, Kotlin, Rust, Scala, or other systems/primary enterprise language that is used in data systems
· Experience in working in industrial environments is a strong plus
· Working on data system across multiple operating systems/cloud environments is considered strong plus
· Advanced degrees such as MS specially in distributed computing or data systems is strong plus
Relocation Assistance Provided: Yes