My time at Oracle was a great learning experience for me. I was part of the Advanced Workload Repository team. Our focus was on developing the tools used by database administrators. These tools help Oracle to provide a greater value to its database customers and made Oracle more competitive in the database space.
What I Learned
During my time at Oracle, I had the opportunity to learn and grow in various areas. I improved my time management skills and became adept at balancing multiple responsibilities. Additionally, I honed my collaborative skills, by learning to give effective status updates and keeping everyone informed.
One of the key things that I learned from my boss was the importance of asking good questions. Initially, I faced difficulty in receiving prompt and satisfactory responses. However, I improved my questioning technique by narrowing the scope of my questions and making them easier to answer. Additionally, this helped me to navigate the codebase, understand what I was reading, and find information on my own. This made me much more confident with reading code and comprehending it, which ultimately made me a better software developer.
Moreover, our team meetings proved to be a valuable learning experience. We primarily focused on design and architecture, rather than implementation. Through discussions about potential problems and tradeoffs, I developed my skills in software design. Additionally, I learned how to present my ideas in a clear and concise manner during meetings, which improved my communication skills. Since different members worked in different areas of the software, it was important to present the idea from the ground up. I got really good at explaining the problem, the cause, and my solution in a clear way to someone with no context about the software or issue, which pushed my communication to the next level and helps me to communicate with stakeholders and non-technical members.
Overall, my previous job provided me with opportunities to develop and refine various skills that are important in the software development field.
Projects
DB Replay
Oracle Database Replay is a powerful tool for database administrators that enables them to capture and replay database workloads, including SQL statements, user sessions, and system events. This tool is useful for simulating production environments and testing changes or upgrades to the system without affecting the live production environment. It is also helpful in selling Oracle’s hosting services. Customers can see exactly how each tier will perform on their real workload and compare the value with their own hosting.
AWRHub
AWRHub is a useful tool for database administrators to centrally gather and analyze AWR statistics from multiple source databases. This can simplify the management of multiple database instances and provide a separate database for long-term storage of performance data. Additionally, by using a separate hub database, the load on production databases is reduced, which can help improve overall database performance.
AWR Report
The Oracle AWR report is a performance tuning tool used in Oracle database environments. It captures performance data at regular intervals and provides information about database instance activity, resource usage, wait events, SQL statements, and other performance metrics. The AWR report is used by database administrators and performance tuning experts to identify performance bottlenecks, diagnose performance problems, and tune the database for optimal performance.
My Contributions
I contributed to these project by ensuring that the data capture event (snapshot) was accurate and performant. I fixed numerous bugs that lead to incorrect or inconsistent data in the report. I also made sure that our automated test suite was comprehensive and up to date with the newest features.
I helped to determine the trajectory of these projects by participating in team discussions about goals, design, and implementation.
Lastly, my efforts helped to drive the projects forward. I developed feature enhancements to extend the functionality of our tools and improve performance. Additionally, I completed many feature backports to older releases, expanding the use of our tools to a larger customer base.