Sign in to view Daniel’s full profile
or
Already on LinkedIn? Sign in
By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.
Sign in to view Daniel’s full profile
or
Already on LinkedIn? Sign in
By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.
Fort Mill, South Carolina, United States
Sign in to view Daniel’s full profile
Daniel can introduce you to 10+ people at Oracle
Join with email
or
Already on LinkedIn? Sign in
By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.
3K followers
500+ connections
Sign in to view Daniel’s full profile
or
Already on LinkedIn? Sign in
By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.
View mutual connections with Daniel
Daniel can introduce you to 10+ people at Oracle
Join with email
or
Already on LinkedIn? Sign in
By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.
View mutual connections with Daniel
or
Already on LinkedIn? Sign in
By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.
Sign in to view Daniel’s full profile
or
Already on LinkedIn? Sign in
By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.
About
Welcome back
By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.
New to LinkedIn? Join now
Activity
3K followers
-
Daniel McGhan shared thisNew in SQLcl Projects 26.1.0: stage.substituteSchemas makes staged artifacts schema-agnostic by substituting schema names with Liquibase variables (e.g., hr → ${hr}). You can stage once, deploy anywhere. Learn how it works and why you should flip the default: https://lnkd.in/eysmYBgU #SQLcl #Liquibase #DevOps Karim LakhssassiSchema-agnostic Staged Changesets with stage.substituteSchemasSchema-agnostic Staged Changesets with stage.substituteSchemas
-
Daniel McGhan reposted thisDaniel McGhan reposted thisThis Thursday at APEX World, you will learn a lot about SQLcl features every PL/SQL & APEX Developer should be familiar with: - import/export data - Data Pump to export/import complete schemas - Projects for CI/CD of Database & APEX applications - Liquibase - CODESCAN - to identify PL/SQL, SQL, and performance issues - connect AI to the database via the built-in MCP server and of course, how to customise the SQLcl terminal to your needs. And it's all in 50 minutes. See you there! #APEXWORLD #orclAPEX #SQLcl #database #oracle
-
Daniel McGhan shared thisIf you're in the Toronto area, don't miss this event!
-
Daniel McGhan reposted thisDaniel McGhan reposted thisAI assistants + accurate database documentation = better developer experience 🚀 Oracle Database documentation is massive and updated frequently. AI models will give wrong answers if trained on old documentation or documentation of another Database version. Oracle just open-sourced an Oracle Database Documentation MCP Server. What it does: - Indexes version-specific Oracle Database documentation - Provides MCP-based search API to AI assistants - Ensures accurate, up-to-date answers Links in comments 👇 #OracleDatabase #AI #MCP #DeveloperExperience
-
Daniel McGhan reposted thisDaniel McGhan reposted this** CONTRACT OPPORTUNITY ** Oracle APEX Developer * To Start: ASAP * ~12 months * Outside * Defence (SC not required) * 95%+ remote
-
Daniel McGhan reposted thisDaniel McGhan reposted thisWho wants to be a part of Oracle’s Health and Life Sciences, consisting of world-renowned legends/leaders, empowered to solve the planet’s most complex healthcare problems, enabled with disruptive AI capabilities? We’re hiring a Senior Full Stack Software Developer. Apply below or DM me if interested! https://lnkd.in/gaXzSBkG #hiring #fullstack #oci #ai
-
Daniel McGhan reposted thisHere's an #orclapex developer with the same last name as me! What a coincidence. Oh no, wait. That's my son. Yes, it is. So: Eli was hired by #Oracle back in 2014 when I rejoined the borg, and brought with it the PL/SQL Challenge (re-branded into the Oracle Dev Gym) and its development team: namely, Eli. Since that time, Eli has been busily deepening his expertise in SQL, PL/SQL and Javascript, among others. He's been the key developer behind several public-facing websites, including the Dev Gym, AskTom and the Oracle ACE sites, and many internal sites. In other words, he was a member of the APEX team, but as a developer using APEX. He's a solid communicator, works well with others, and is dedicate to improving his craft. If you're looking to hire an Oracle APEX developer, I encourage you to contact Eli.Daniel McGhan reposted thisAfter over 11 years at Oracle, my journey on the Oracle APEX team has come to an end. I am extremely proud to have been a part of it for so long. I worked with so many great people over the years and I will always treasure the experience. On to the next chapter! Looking to connect and find my next opportunity, wherever that may lie. #OpenToWork #orclapex
-
Daniel McGhan reposted thisBig change for me: after almost 5 years at Oracle, including a short time with the APEX Development team (my dream job!), my journey there has unexpectedly ended. I’m now looking for my next role as an Oracle APEX, OCI, and Database specialist. If you know of any opportunities, I’d love to connect! #OracleAPEX #Oracle #OCI #DatabaseDevelopment #JobSearch #APEXCommunity #OpenToWork
-
Daniel McGhan liked thisDaniel McGhan liked thisDay 3 post-Oracle layoff: I’ve spent a good chunk of time revising my resume, my personal website, and applying to roles, but mostly soaking up time with my 17-month-old son, a silver lining I’m so so grateful for. (pictured: how I’ve been spending the best part of my time lately) As I also reflect on my time at Oracle (2022–2026), I’m incredibly proud of the work I got to be a part of on the FreeSQL team: • Helped build and ship FreeSQL, Oracle Database in the browser, from early development through launch • Worked across the stack (Preact, TypeScript, JSX, PL/SQL, REST APIs) to deliver core product features • Designed and improved developer workflows for running SQL and PL/SQL in a fully managed environment • Contributed to SQL*Net connectivity, enabling external tools like VS Code and SQLcl to connect to FreeSQL schemas • Built hands-on tutorials, demos, and LiveLabs workshops to help developers learn by doing • Helped bridge Oracle Docs with executable environments, making technical content interactive • Leveraged my personal audience (83k on X, 9k on LinkedIn) to drive awareness and adoption of FreeSQL through technical content and demos I joined Oracle as an intern in Summer 2022, returned in Summer 2023, and had the opportunity to grow into a full-time role, learning an incredible amount along the way. If you know of any opportunities or just want to connect, I’d love to chat :) I’m actively exploring software engineering, technical PM, and developer evangelism roles~ #OpenToWork
-
Daniel McGhan reacted on thisDaniel McGhan reacted on thisAfter 34 incredible years with Oracle, I’m excited to begin a new chapter—retirement. This next phase will be centered around creativity, craftsmanship, and exploration. I’ll be dedicating my time to writing music, building guitars and amplifiers, and continuing to dive deeper into the art and science of sound. I’m looking forward to the freedom to create, experiment, and learn purely for the joy of it. I’m also excited to spend more time traveling—exploring new places, revisiting old favorites, and finally checking off a few long-awaited bucket list adventures. Beyond the workshop and the road, I’ll be enjoying life’s best moments—spending time with my wife and family, and, of course, being thoroughly supervised by our cats. Grateful for the journey so far, and excited for what’s ahead.
-
Daniel McGhan liked thisDaniel McGhan liked thisI'm pleased to announce that I've become an Oracle ACE Associate. I'll do my best to keep this title, even though I know how much work and commitment it requires. Huge respect to every Oracle ACE, regardless of level. 🍾 #OracleAPEX #OracleACE
-
Daniel McGhan reacted on thisWow - I never thought I would live to see this day...Daniel McGhan reacted on this🚨 Introducing Pig Latin SQL Support in GizmoSQL 🐷📊 We’re excited to announce that GizmoSQL now supports the Pig Latin SQL dialect — because standard SQL was just too… readable. Starting today, you can write fully compliant queries in Pig Latin — including keywords, table names, columns, and even aliases. Yes… everything must be translated. 🫡 🧠 Example Query ELECTSE ameNay, ageSalaryay OMFRE employeesay EREWHAY ageay > 30 ORDERYAY YBAY ageSalaryay ESCDAy; 🔍 With Joins ELECTSE e.ameNay, d.epartmentNay OMFRE employeesay e OINJAY departmentsay d ONAY e.epartmentIday = d.iday EREWHAY d.ocationLay = 'ORLFIDAY'; ⚠️ Important Notes • Identifiers must also be translated • String literals are strongly encouraged (but not required) to be Pig Latin • Query planners now operate in “Oink Mode™” • Error messages may or may not be helpful: ERROR: Elationray otfay oundfay: employeessay We believe this unlocks a whole new level of developer productivity for… someone. Full docs here: https://docs.gizmosql.com/ Happy April Fools’ Day 😄 #SQL #DataEngineering #DuckDB #GizmoSQL #AprilFools
Experience & Education
-
Oracle
********* ********
-
********* ******* *****
****** ********* **********
-
*************
****** **** ********* *** **********
-
*** ********** *******
-
View Daniel’s full experience
See their title, tenure and more.
Welcome back
By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.
New to LinkedIn? Join now
or
By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.
Publications
-
Expert Oracle Application Express
Apress
A special book - by 13 experts. All revenues go to charity!
(There is a 10 author limit. The "missing ones" are Sharon Kennedy and Anton Nielsen.Other authorsSee publication
Projects
-
SuperLOV
-
The built-in Popup LOV item in APEX can be a powerful tool when the number of possible selections is too high for other item types that use LOVs, such as a select list. However, people often wish to display more information when making a selection than this item type allows. In the past, developers worked around this issue by either concatenating values in the display column or by creating a custom solution.
Custom solutions provided the ultimate flexibility but required a lot of…The built-in Popup LOV item in APEX can be a powerful tool when the number of possible selections is too high for other item types that use LOVs, such as a select list. However, people often wish to display more information when making a selection than this item type allows. In the past, developers worked around this issue by either concatenating values in the display column or by creating a custom solution.
Custom solutions provided the ultimate flexibility but required a lot of knowledge and were not always easily transferable to other items, pages, or applications. The SkillBuilders Super LOV plug-in is designed to make these issues a thing of the past while providing a rich, web 2.0 experience.Other creatorsSee project
Honors & Awards
-
Oracle ACE
Oracle
Oracle ACEs and Oracle ACE Directors are known for their strong credentials as Oracle community enthusiasts and advocates.
Recommendations received
3 people have recommended Daniel
Join now to viewView Daniel’s full profile
-
See who you know in common
-
Get introduced
-
Contact Daniel directly
Other similar profiles
Explore more posts
-
Stephen Moore
CloudSmiths | Salesforce… • 7K followers
Salesforce Tip of the Day – Lightning Out Use Lightning Out to embed your Lightning Components in external web applications — perfect when you want Salesforce functionality outside the platform. ✅ Allows you to render Lightning components on non-Salesforce pages. ✅ Great for customer or partner portals that aren’t on Experience Cloud. ✅ Uses your Salesforce org as the component host and authentication source. Example setup: 1. Add the Lightning Out dependency in your Visualforce or external page: HTML <script src="https://lnkd.in/dcD5JP5a"></script> 2 Bootstrap your Lightning app HTML <script> $Lightning.use("c:MyApp", function() { $Lightning.createComponent("c:MyComponent", {}, "lightningContainer"); }); </script> Tip: Make sure CORS and Lightning Out dependencies are properly configured in Setup → CORS and Lightning Out Dependencies.
1
-
Nehanth Yarlagadda
Brillio • 1K followers
Salesforce Story: Safely Decommissioning Unused Fields Worked on a Salesforce story to identify and decommission unused custom fields in a high-volume, long-running org. Even though the fields showed zero data usage over multiple years, they were still referenced across: Apex controllers and batch logic Report types and reports Permission sets and profiles Related lists and layout metadata Rule-engine configuration (JSON-based metadata) CI/CD destructive deployment steps The work involved: Validating data usage without full table scans Refactoring Apex to remove dead branches and query references Cleaning all FLS and UI metadata Removing indirect dependencies (formula fields, config mappings) Handling environment differences during destructive deployments Using pre-destructive changes in the pipeline to safely remove metadata This story reinforced that in Salesforce, unused does not mean unreferenced, and that proper field retirement is as much about dependency management and deployment sequencing as it is about data analysis. #Salesforce #Apex #SalesforceDev #SalesforceDeveloper #SalesforceDevOps #Metadata #CI_CD #EnterpriseSalesforce #TechnicalDebt #CleanArchitecture
4
1 Comment -
Salesforce Ben
137K followers
Salesforce Architects are expected to think beyond Lookup vs. Master-Detail, but as data models span multiple platforms, understanding cardinality, ordinality, and ERD notation becomes essential. Caitlin Graaf breaks down how to read and design precise, platform-agnostic data models and why it matters more than ever. https://bit.ly/3Oh3rnJ #Salesforce
30
-
Niranjan Limbachiya
KiwiQA Services • 37K followers
The night before a major Salesforce go-live…... Everything looked ready. Until a critical workflow failed during final UAT. Lead routing broke. Automation rules misfired. Dashboards showed incorrect data. One small configuration change - big business impact. That’s where structured Salesforce testing makes the difference. At KiwiQA Services, we don’t just test screens. We validate workflows, integrations, roles, automation rules, and performance - end to end. Because Salesforce success isn’t just about implementation. It’s about confidence at go-live. If you're rolling out or optimising Salesforce, let’s make sure it works exactly as your business expects. #SalesforceTesting #QualityEngineering #CRMTesting #AutomationTesting #KiwiQA
19
-
Syncing Soft
603 followers
Most Salesforce environments fail compliance tests not because of Salesforce, but because of how they’re customized. At Syncing Soft, we design Salesforce architectures with: 🔐 Attribute-based access control (ABAC) 🧊 Masking for sensitive fields in reports & APIs 📜 Immutable audit trails for auditors and regulators Customization shouldn’t only improve efficiency. It should keep you compliant. #SalesforceCustomization #AIGovernance #DataSecurity #SalesforceConsulting #EnterpriseCompliance #SyncingSoft
1
1 Comment -
Jim Marion
jsmpros • 6K followers
A lot of talk about GraphQL and #PeopleSoft. The GraphQL "conversation" happens over HTTP, so that is straight Integration Broker. The key challenges are: 🔑 Where to store GraphQL queries/mutations and 🔑 How to safely pass values/parameters to GraphQL servers String concatenation and Message Catalog bind variables may lead to corrupt queries at best and injection attacks at worst. We cover all of these issues in our new module: GraphQL for PeopleSoft https://lnkd.in/dcWUkEd3
18
-
Opus Business Technologies
26 followers
Mixing production and sandbox credentials in your n8n-Salesforce automation? This critical error plagues nearly one-third of implementations I audit. The result: failed syncs and wasted hours diagnosing preventable issues. Root cause is misconfigured environment variables in n8n nodes. Solution: enforce strict credential segregation using n8n’s instance-level variables—never hardcode credentials. This is just one hidden security gap threatening your automation integrity. Unencrypted data flows and unvalidated SOQL queries create business liabilities. Automation without security is future technical debt. Build robust workflows from the start. Full post here ⬇️ https://lnkd.in/eS2xn8Fb
-
AutoRABIT
53K followers
Fast pipelines require fast tests. Fast tests require clean code. It’s that simple. Join Pablo Gonzalez 🇨🇷 —Director of Product Management at AutoRABIT and author of Clean Apex Code—for a webinar focused on why most #Salesforce #DevOps efforts fall short, and how architecture is the missing link. Topics include: ✅ The impact of test speed on CI/CD ✅ Core principles from the Apex Well-Architected Framework ✅ How to build scalable, maintainable Apex Date: Tuesday, July 22, 2025 Time: 10 a.m. ET Register Here: https://bit.ly/3Tu6qbJ
17
1 Comment -
Flow Canvas Academy
1K followers
Andy Engin Utkan and Sally ElGhoul are teaming up for a live session with Salesforce Architects – JAX on January 27: “How to Vibe-Code Your Own Flow Component.” This event will feature live coding and a deep dive into building custom Flow components. In this hands-on session, Andy and Sally will show how to vibe-code a Lightning Web Component and add it to a Screen Flow to expand beyond out-of-the-box functionality. Attendees will also learn how to use Agentforce Vibes to superpower Salesforce Screen Flows. Hope to see many of you there 👋 https://lnkd.in/enfY9jam #Salesforce #TrailblazerCommunity #SalesforceArchitects #Agentforce #SalesforceAdmins #SalesforceDevelopers
-
Ghanshyam Saini
Daten Technology Solutions • 1K followers
Salesforce LWC Feature You Shouldn’t Ignore: State Management https://lnkd.in/gzK_VdyT As LWC applications expand, managing data across components can become increasingly challenging. State Management provides a solution by maintaining a central, reactive state, which supports a clean and scalable UI architecture. Key Functions: - atom() – Create reactive state - setAtom() – Update state - computed() – Auto-calculate derived values Benefits: - Single source of truth - Better performance and scalability - Cleaner code with fewer events and less prop drilling - Easier maintenance Where to Use: - Multi-step forms and wizards - Dashboards with shared data - Cross-component communication - Complex enterprise UIs Architect Tip: If your LWC relies heavily on events, it’s time to implement State Management. #Salesforce #LWC #StateManagement #LightningWebComponents #SalesforceArchitect #FrontendArchitecture #Agentforce #SalesforceDevelopment
21
1 Comment -
Saravana Kannan
Mphasis • 284 followers
Apex Cursors For years, handling large datasets in Salesforce meant choosing between complexity and limits — Batch Apex overhead, OFFSET-based pagination, heap pressure, and tricky recovery logic. Apex Cursors feel like Salesforce finally addressing that gap. Instead of forcing everything into Batch Apex, Spring ’26 introduces a cleaner way to process large SOQL results incrementally, without loading millions of records into memory. What stands out to me • Process up to 50M records • True chunked processing with built-in pagination • Significantly reduced heap pressure • Much cleaner code compared to Batch Apex • Extremely powerful when paired with chained Queueables Where I see this shining • High-volume data processing • Data migrations and archiving • Platform-level and package solutions • Advanced background workloads where control matters ⚠️ Important perspective This isn’t “Batch Apex is dead.” Batch Apex is still the best choice for: • Scheduled jobs • Stateful processing • Strong retry and fault tolerance Apex Cursors modernize how we think about data processing — not replace it. Spring ’26 gives architects another sharp tool. The real win is knowing when to use which. #Salesforce
10
1 Comment -
GRAX
4K followers
Running Salesforce and Azure Synapse? Getting data from one to the other shouldn't require a full engineering project. GRAX makes it simple — connect your Salesforce org, run your initial replication, and GRAX handles everything from there: continuous updates, automated schema changes, and full support for custom objects. Your data lands in your Azure environment, ready for analytics, AI, and reporting. No ETL headaches. No cumbersome middleware. Just your Salesforce data, where you need it. Learn more about the integration 👇 https://getgrax.co/471yF95 #Salesforce #Azure
4
-
KULTURRA
4K followers
What if your Salesforce Screen Flows could collect payments? With KULTURRA, they can. In this video, see how to embed a payment component directly into a flow with no custom code needed. ✔ Collect payments via credit card or ACH ✔ Link payments to Opportunities, Quotes, or custom objects ✔ Trigger follow-ups automatically—all inside Salesforce Turn screen flows into "money flows". 👉 Learn more about Kulturra: https://kulturra.com/ 👉 Try it on AppExchange: https://lnkd.in/gpdTcj6
9
-
VTS360
408 followers
🚀 Confused about when to use @AuraEnabled, cacheable=true, @wire, or Imperative Apex in LWC? Here's a breakdown that can help you choose the right approach for your Salesforce component development: 🔹 @AuraEnabled Exposes Apex methods to LWC. Best for imperative calls and DML operations (insert, update, delete). Cannot be used with @wire. 🔹 @AuraEnabled(cacheable=true) Used for read-only Apex methods. Enables client-side caching and can be used with @wire. Must not include DML or callouts. 🔹 @wire Ideal for reactive, auto-fetched data from Apex (when cacheable) or UI API (e.g., getRecord). Works great for loading data on component render and keeping it up to date. 🔹 Imperative Apex Used for on-demand actions—like form submissions or button clicks. Works with both types of Apex methods but bypasses caching even if the method is cacheable. 🔁 Use refreshApex() to manually refresh data fetched via @wire when using cacheable methods or Lightning Data Service. #Salesforce #LWC #LightningWebComponents #Apex #AuraEnabled #ImperativeApex #WireDecorator #refreshApex #SalesforceDeveloper #PerformanceMatters #Trailblazer #CleanCode
3
-
Andrew Porter
Innovior • 2K followers
Another successful Salesforce Agentforce launch! This time, the goal was to replace an existing bot and LLM setup that had hit its limits. All the knowledge was crammed into one big, overly complex prompt with tangled logic that left no room for the agent to grow or scale. How? We replaced it with Agentforce and Salesforce Knowledge, using out-of-the-box Omni-Channel routing and leveraging their existing Case Management. The result? A much more scalable, intelligent, and natively integrated AI experience for the client’s Contact Centre. Now they’ve got a more eloquent agentic solution, a better user experience, and a much simpler maintenance model, able to keep up, all powered by the Salesforce platform.
53
2 Comments
Explore top content on LinkedIn
Find curated posts and insights for relevant topics all in one place.
View top content