[HN Gopher] Software horror show: SAP Concur
___________________________________________________________________
Software horror show: SAP Concur
Author : AndrewDucker
Score : 158 points
Date : 2022-12-04 20:45 UTC (2 hours ago)
(HTM) web link (blog.plover.com)
(TXT) w3m dump (blog.plover.com)
| Havoc wrote:
| Yep...they're all a pain. At least they mostly work once you jump
| through the required hoops
| fetzu wrote:
| Sometimes when I feel like the worse product manager in the
| world, I just click that Concur link in my work computer
| browser's bookmark bar to remind myself that, even if I suck,
| some bloke at SAP is doing their job even more terribly than me..
| _jal wrote:
| The Concur UI is a bucket of ass, classic enterprise software.
| Barely tolerable when it is working, and it is broken or super
| slow maybe 1 in 4 times I try to use it.
|
| On the trip side, the car rental selector is something special.
| You can't check multiple vendors at once, so if cars are in
| demand, expect to spend a while discovering you can't get one.
| a_c wrote:
| These kind of bad UX problem can be easier to rationalize once we
| understand the money flow. Would you stop using it because of
| such UX? Would your stopping cause the company to stop procuring
| SAP? Was the search the selling point in the first place when the
| sales representative pitch the software to finance department?
| Probably no, no and no. So are all other bad UXes.
|
| And we can probably wager that a better UX doesn't yield the
| developer a better pay cheque.
| underwater wrote:
| The is the hallmark of bureaucracy. Seperate the functions, and
| then let each team externalise the costs without any checks and
| balances.
|
| Finance purchase Concur because it solves their problems and
| integrates with their existing tools. They don't care that
| people hate it, or that it wastes the company's resourcing when
| people are fighting a broken UI instead of doing their day job.
|
| Normally engineers are shielded from this pattern in their day
| jobs. But I have worked at companies that have gone the other
| direction. In one I met with a risk averse gatekeeping team and
| told them that for a newly acquired product we were not going
| to be able to meet the (arbitrary) SLO for the glut of tickets
| they assigned us, and asked for help. Their suggestion was to
| pull the app from market.
| Mister_Snuggles wrote:
| The ironic thing is that if the user stops using this software
| the company benefits because they don't have to pay out the
| expense claim that the user didn't enter. This seems like a win
| for the company and the company would conclude that using SAP
| has reduced their expenses.
|
| The key thing about enterprise software is that it's never sold
| to end-users, it's sold to senior managers and executives. The
| contact that this group will have with the software is to
| approve transactions (e.g., Reqs, POs, Expense Claims, etc) and
| maybe view some reports. You can bet that these interactions
| are very streamlined.
| alkonaut wrote:
| It also probably describes long lead times and lots of overhead
| (expensive deployments etc).
|
| I guess the question that is often missing when these systems
| are specified and bought is "if we find a trivial but annoying
| UX papercut issue in the software which is 5 minutes of actual
| development time, how quickly and how cheaply would we have
| that fixed once we report the issue?"
|
| Having systems people like is important. I think that often
| seems to get lost.
| emodendroket wrote:
| I think you could also work from likely evolution of the
| system. Probably this was just a string and somebody at some
| point thought, hey, let's add suggestions and did the quickest
| way they could think of to do that without fundamentally
| reworking.
| misthop wrote:
| Link hugged to death. Archive
| http://web.archive.org/web/20221204204618/https://blog.plove...
| IceDane wrote:
| This is the least of SAP's crimes against software. Pretty much
| everything SAP builds is janky and awful like this. If you're
| lucky, "minor" UX problems like these are the only thing you have
| to deal with, but in the vast majority of cases, that's not going
| to be the case.
|
| Where I work, I also have to use a SAP system for expense
| reports. I can't even tell you what it's called, but the
| interface is basically just directly from SAP GUI(except
| embedded, very poorly, into a website) and every single
| interaction you perform results in a sync query to the backend,
| freezing the UI until you get a response.
|
| The worst part is that no one really cares. SAP doesn't care. The
| users/companies that are stuck with SAP don't really care, or at
| least if they do, well, no one is going to spend valuable dev
| time on building their own internal expense registration
| platform(or whatever) just to fix something that sucks to use,
| but otherwise "works".
|
| I also have to register my hours, being a consultant, and this
| also happens via some SAP system. One thing my current project
| manager told me recently is that the description field that we
| have to use to describe what work we did is just invisibly cut to
| 40 characters on the backend. I can freely type a whole essay
| describing what I did, but the pm reviewing will just see 40
| characters.
|
| Assuming that any sort of thought goes into most of SAP's
| software is like trying to reason about an insane person's
| behavior. It's completely pointless since there is no reason
| involved.
| [deleted]
| java-man wrote:
| This is a clear indication that the user is not the customer. The
| first time someone arrives at the scene catering to the users,
| the whole industry will be wiped out. This happened to the phone
| handsets when iphone arrived.
|
| So, future investors - look at the startups that address the
| _user_ problems, not the _client_ problems, even though the
| latter are paying.
| cxf12 wrote:
| When business pays the ad dollars, the customer is never the
| user who's policies and features are at center.
| fphhotchips wrote:
| The two are fundamentally different. Unless you can devise a
| way to do BYO expense platform, you're comparing B2B to B2C
| product development, marketing and sales.
|
| Do you think the PMs at Concur just woke up one day and decided
| to be user hostile because they're asshats? Of course not. They
| did what the Sales team, and Gartner, told them they needed to
| give to CFOs so that they would buy it. And then CFOs bought
| it.
|
| Until someone can quantify the benefit of "better UX" to CFOs,
| or provide that _and_ all the CFO facing features they want,
| crappy expense platforms will continue to be the order of the
| day.
| mgkimsal wrote:
| It will be impossible to do any real comparison because the
| bad stuff is relatively entrenched at most large places.
|
| Small quality issues for users would reduce errors, and get
| expense data reconciled faster. But... by how much? 10%? 20%?
| No one will care enough to fund a large system replacement
| for a 10% reduction in expense report filing.
| emodendroket wrote:
| > The first time someone arrives at the scene catering to the
| users, the whole industry will be wiped out.
|
| I find it a little hard to see to be honest. Team members might
| push to use Slack over some other chat solution because they
| spend all day using that -- I've seen that happen and work. How
| often do you do expense reports that you're really going to nag
| the company to buy your favorite solution?
| X-Cubed wrote:
| Even Google Calendar does this. If I'm adding an event an hour
| from now, why does the Location auto-complete list show locations
| that are impossible to reach in time at the top of the list? Is
| it not more likely that I would be booking an event near to my
| either my current location or my home?
| mjd wrote:
| My number one complaint about Goofle Calendar is that it'll let
| me schedule an event in the past, with a reminder and
| everything, and say nothing.
| ChrisMarshallNY wrote:
| We used to use Concur, at my old job.
|
| I hated it, but didn't use the mobile app. I always did my
| expenses by hand, on my workstation, after travel, and I took
| notes by hand.
|
| It worked better than the old manual version, we had before it
| (It _can_ be worse, because it _was_ worse, and I have the scars
| to prove it).
| [deleted]
| sokoloff wrote:
| I hate submitting expenses probably as much as the typical
| engineer, but Concur seems "no better, no worse" than the typical
| dumpster fire of these systems.
|
| I will say that it does have good integration between the company
| card transactions and the expense reporting feature.
|
| I am more mystified than the author at why my 75-mile range
| electric car offers a default sorted list _by full street name,
| then by state_ , happily inquiring as to whether I intend to
| drive 225 miles to my entered street name before a matching entry
| that's 4 miles away.
| dude187 wrote:
| Used to use concur in a past life, now expensify. There's not
| even words for how much better expensify is.
|
| It wasn't _that_ bad for a lot of entry types, but for me what
| made it a constant problem were hotels. It wanted a daily rate
| and number of days. Yet our rates were different day by day,
| and it made you do a separate tax entry. So you're having to BS
| a close enough "daily rate" and adjust the tax field of a
| specific day to adjust for any single penny rounding errors.
| Then there were resort fees or other things, which it would
| also make you call out but I think it even had a fixed number
| of "extra fees" input boxes.
|
| For a set of a few non travel expenses it was only a bit worse
| than any system ought to be. For travel it was practically
| unusable and for reasons that actually butchered your report
| geraldwhen wrote:
| You can enter each day manually now, with fees. It's been
| this way for at least 7 years.
|
| That's how long I've been filing expense reports with concur
| for hotels.
| dude187 wrote:
| I do remember that being a thing, but I think with the way
| it auto populated from our booking system meant I couldn't
| use it. It's been a bit, but I'm pretty sure I had to go
| through that realization each time too
| geraldwhen wrote:
| It's definitely not pleasant, but it eventually works
| with enough clicks.
| ghaff wrote:
| A lot of this is related to corporate policies.
|
| I use Concur and just enter the total and enter X nights in
| $CITY for a justification. I don't need to enter nightly
| total much less any sort of breakdowns. As I said in another
| comment, a LOT of Concur (and expense software generally)
| pain relates to the hoops a company makes you go through as
| opposed to the software itself.
|
| When we first implemented Concur, there was a lot of
| kvetching. A bunch of requirements got dialed down and while
| there are still a few silly things here and there, they're
| easy to work around once you know about them and it's mostly
| just the very random audit thing at this point.
| swasheck wrote:
| i had the opposite experience where i moved jobs from and the
| transition from concur to expensify was brutal. duplicate or
| blackholed entries and submissions. obfuscated mandatory
| policies. obtuse allocation methods, and per diem breakdowns
| felt as though they were being actively hostile to the user.
|
| expensify felt like a jr. high coding project and i hated it
| to the point of putting a time tracking line item in for
| expense reports.
| ghaff wrote:
| Of course, Google Maps seems to be equally random when it
| starts guessing your destination.
|
| I reluctantly started using a corporate card for most things
| because I sort of had to. I don't like not getting the personal
| benefits but it actually does make (most) things easier with
| Concur. Only real issue is it's harder to split personal and
| company charges.
| emodendroket wrote:
| Don't you still need to make an expense report in that case?
| ghaff wrote:
| Yes. But it means that all the expenses are accounted for
| and added to the expense report even if I need to add
| receipts for some of them and may have to add some
| additional information, e.g. category. As I say, not my
| choice but it probably captures some random fees etc. that
| I otherwise tend to forget about.
| bragr wrote:
| >I will say that it does have good integration between the
| company card transactions and the expense reporting feature.
|
| This surprised me too. Every expense system is ass but at least
| that saves a lot of data entry.
| lol768 wrote:
| I'd hazard a guess that it's because it's sold to finance
| people that value that sort of functionality (reconciliation
| of bank statement events with expense claims). Not much
| thought is given to the end users that have to put up with
| these tools.
| Aloha wrote:
| We used Excel based expense reporting for years, it takes me
| much less time to assemble my reports on concur, I rather like
| it, its the least of all evils.
| deely3 wrote:
| Could it be that by using Excel you just move complexity of
| reporting to someone who have to extract these data from
| Excel and import it into some system or analyze it?
| rsj_hn wrote:
| Curious, what is the complexity of extracting data from
| excel or of loading a csv file into an external reporting
| system?
| nikhilgk wrote:
| A few years ago, we were building somethings to integrate with
| multiple expense and invoice management systems. Concur's odata
| based APIs were by far one of the worst integration experiences I
| had. (Even worse than integrating with dot net SOAP APIs from
| AXIS and Java) You could see that some of the older APIs were
| well documented and thought out and the new versions were
| considerably worse. What we realized was that the earlier
| versions were built prior to SAP acquiring Concur.
| fghorow wrote:
| I was forced to use an SAP product at an old job about 15 years
| ago.
|
| Unfortunately, I find it completely unsurprising that any SAP.*
| product is a dis-organized mess of a kludge, with no rationality
| evident anywhere.
|
| Oh, and the CIO who foisted that pile of cr*p upon my
| organisation? She moved on shortly after SAP was implemented --
| undoubtedly to foist SAP on some other poor unsuspecting org. I
| sure hope her SAP stock has tanked.
| gabrielsroka wrote:
| SAP acquired Concur.
| peterbmarks wrote:
| Of course they are motivated to make it hard to claim expenses.
| This is genius.
| rdxm wrote:
| bitwize wrote:
| > Assume that bad technical decisions are made rationally, for
| reasons that are not apparent.
|
| Actually, this example proves the rule.
|
| Large enterprise applications like this are used by governments
| and large businesses that must comply with various accounting,
| legal, and administrative regulations. So vendors like SAP are
| incentivized to deliver products that take the least amount of
| effort and incur the least amount of risk while still meeting the
| twisty little maze of requirements. If bogo-sort is the least-
| effort way of organizing the location list, bogo-sort it is. For
| example it may add the locations to a map or hash table, and then
| iterate over them in an unspecified order.
| jojobas wrote:
| From memory, it remembered places you've entered and showed them
| up top when searching.
|
| I wouldn't challenge that concur sucks, the fact that you
| receipts are OCRed from the app but not from the website drove me
| nuts
| Scuds wrote:
| I interviewed with them prior to the SAP acquisition back in
| 2017.
|
| "We're looking for someone with experience with ASP and database
| performance improvements."
|
| "You mean, ASP.net - not old school VB6 derived, interpreted -
| 'pretty cool for 1997' Active Server Pages - ASP?"
|
| "Hey hey! You're the guy we want!"
|
| Of course I would have taken the job if I'd known they'd be
| acquired.
|
| edit: Huh, they were acquired in 2014? Ah well - it's like
| someone's MVP that made it out to production, then they made it
| big and that MVP kept being glommed onto.
| cesarb wrote:
| I can see another issue in that list: for half of the entries, it
| displays the state but not the country, and for the other half,
| it displays the country but not the state (or its local
| equivalent). Given that there are things like cities with the
| same name but within different states in the same country (a
| quick web search tells me that, in my country, there are many
| cities like that), and even states named identically to an
| unrelated country, it's not hard to see how this could get
| confusing.
|
| (Edit: here is a full list of homonym cities in my country:
| https://www.embrapa.br/manual-de-referenciacao/anexo-cidades...)
| ghaff wrote:
| In my experience, the far bigger complaints with corporate
| expense management software is the audit process which kicks back
| expenses often for random and trivial reasons rather than the
| software itself--which may not be magical but generally isn't the
| main source of pain.
| zachrose wrote:
| Sometimes they work together! I submitted an email receipt and
| it kept getting rejected because Concur only shows the first
| page of a multi-page PDF unless you go through some very non-
| obvious navigation to see the whole thing.
| emodendroket wrote:
| I was a bit vexed when my expense report with something I
| bought at a retail store, with the receipt, was rejected
| because I did not provide an invoice with my name printed on
| it. But that wasn't even the software!
| imwillofficial wrote:
| I found concur to mostly work for me. It's kludgy for sure, but I
| always get paid and expenses handled fast. Sometimes within a
| day.
| blinkingled wrote:
| This is true for me and I have been recently submitting many
| expenses each week - it always worked. Hell I even liked the
| itemized expense entry feature!
| dehrmann wrote:
| It doesn't not work.
| ConradKilroy wrote:
| I must concur, imperfect Concur is a major improvement from the
| past systems of doing travel expenses.
| [deleted]
| emodendroket wrote:
| I have used Concur and don't have any strong feelings about it.
| It is not wonderful but it does the job. I think it is a little
| overwrought to call it a "horror show" that the list isn't really
| sorted. Presumably they see typing in the place name as the
| primary use case and this was an afterthought. I kind of expected
| serious bugs from the title.
| revskill wrote:
| Is this topological sort ? So, it's a hard solved problem.
| Because, for example, postgresql order by doesn't allow it by
| default.
| dragonwriter wrote:
| > Is this topological sort ?
|
| No, neither what it is doing or what it ought to be doing is a
| topological sort. What it is actually doing seems like "return
| all matching the stem without any sort [or sorted by ID or some
| other non-relevant value]."
|
| The various things the user suggest are all sorts by fairly
| simple functions, not the kind of dependency ordering at issue
| with a topological sort. _Choosing_ the best one to use as a
| default might be hard, but they aren't the kind of complex
| things you can't implement as a simple order-by once you are
| set up for it.
| emodendroket wrote:
| I guess the author suggests, why not at least do SORT BY
| country THEN BY city_name or something like that. Which might
| be nice, I suppose.
| revskill wrote:
| It's only possible if the address field is not single Text
| field :)
| emodendroket wrote:
| True, but it's not even sorted naively as a single string.
| wardb wrote:
| SAP Concur is a complete nightmare for managing expenses. It's so
| bad that it will ruin your entire weekend, leaving you feeling
| frustrated and drained. The interface is a convoluted mess that
| is practically impossible to navigate, and entering expenses
| takes forever.
|
| The expense categorization system is an abomination that will
| drive you insane with its constant mistakes and errors. The
| approval process is a black hole that sucks up your expenses and
| never spits them back out. I feel SAP Concur is the worst
| software ever created for expense management, and using it makes
| me wish I never had to do expenses again.
|
| Expensify is so much better. The OCR isn't great though
| thefourthchime wrote:
| As the author mentions. This was a failure on and down the chain,
| from QA to PMs.
|
| When I see software like this, it reeks to me of contractor work.
| We hire them to handle something that we don't have time for our
| core team, and or something not very important.
|
| The result is the devs do a minimal job to get paid. QA doesn't
| care and the PMs either didn't see it, or have bigger fish to
| fry.
| munchler wrote:
| That's funny. I used to work for a high-end consulting company,
| and we always marveled at the level of dysfunction in our
| clients' IT departments. They would call us in when their devs
| couldn't/wouldn't do the work. We were pretty expensive by
| comparison, but at least we got the job done. I guess it just
| depends on the kind of contractor you hire.
| [deleted]
| throwawaysleep wrote:
| Perhaps a matter of levels. High end consultants usually have
| some reputation to maintain. Places like IBM and Accenture
| are just good at navigating large org purchasing, so as the
| only bidders in many cases, can put out shit.
| emodendroket wrote:
| I don't think there's a logical inconsistency here. Imagine
| that the quality of work we can expect from a contractor with
| no particular investment in your long-term success is a 7. If
| your internal team can produce a 10 given the time, you'd
| look at that and think it's not very good. On the other hand,
| if your internal team can only manage a 4, hey, go with the
| contractor.
| wil421 wrote:
| Typical consultant mindset. They cant fathom how big IT got
| into the situation they are in due to legacy software,
| mergers, and periods of no investment. They only do
| greenfield projects and have complete disregard for IT's
| processes.
|
| What's funny is the big consultancies are usually to blame
| for stupid IT or they make bean counter decisions to not
| invest in IT. Thus the reason we need chop shops to come in
| and and help. Oh, and god forbid we add an FTE with domain
| experience who can help us.
| mgkimsal wrote:
| I didn't sense all of that from the comment, but you're
| definitely anti-consultant.
|
| Sometimes consultants are brought in specifically to bypass
| whatever internal processes are in place. Those internal
| processes are sometimes the very reason not enough is
| getting done and external resources are brought in.
| mynameisvlad wrote:
| I would say that GP comment definitely has a "normal
| teams are useless until consultants come in" view, which
| the parent comment also seemed to pick up on.
| Specifically, this part bugged me:
|
| > They would call us in when their devs couldn't/wouldn't
| do the work. We were pretty expensive by comparison, but
| at least we got the job done.
|
| This makes it seem like the developers just didn't want
| to do the work or it was harder than their skill level,
| which, realistically, isn't the case.
|
| FWIW I agree that consultants have their place,
| especially as a way to work outside of the typical
| system, but I'm not about to ignore that GP practically
| made it sound like consultants are better than regular
| developers.
| munchler wrote:
| Wow. We were a small, private company. I'm sorry for
| whatever hurt you.
| FooHentai wrote:
| I've worked on both sides of this divide, and most of it
| makes sense by just considering Chesterton's fence.
| kypro wrote:
| When you say "contractor work", do you mean agencies, or the
| work of individual contractors?
|
| Individual contractors in my experience tend to be very good
| (above average) and do care about building quality software -
| their reputations depend on it.
|
| Agencies on the other hand are a nightmare. I have nothing
| against junior devs but in my experience agencies love to put
| junior devs on projects they're unqualified for and then give
| them bare minimum support and guidance. And obviously they'll
| happily cut corners because technical debt is their problem so
| most stuff is hacked together so it just about works, but is
| utterly unmaintainable.
| cxf12 wrote:
| its pretty interesting that maps.google.com has an SAP Concur
| listing with about a 3.3 rating.
| cookiengineer wrote:
| We actually joke around the area where SAP is located (Walldorf,
| Germany). In surrounding cities devs joke about the fact that
| there are literally dozens if not hundreds of web agencies doing
| nothing more than mobile/tablet ready SAP user interfaces. That's
| their only business model.
|
| I'm not kidding you, there's an entire ecosystem around the fact
| that SAP UI5 is so crap that people cannot use it on their
| smartphones. And concept-wise it's built very similar to the
| early jquery-ui releases (remember the first iPhone's menus?
| Yeah, THAT old), but only in undocumented and even crappier.
|
| I don't even know how to rationalize this anymore. At one point I
| ditched every company that uses SAP, but it's like the plague.
| You can't avoid it.
| intelVISA wrote:
| The people buying the software don't have to use it, would you
| buy your corporate underlings the comfortable, expensive shoes
| or just enough rags to painfully remind them who their masters
| are?
|
| SAP produce the lowest cost rags in town, and you will learn to
| love them.
| [deleted]
| dan-buzzkill wrote:
| TripActions is great, best I've used
| MikeDelta wrote:
| Sorted lists require an extra license, I am sure sales will be
| happy to talk to procurement in getting you one.
| pflenker wrote:
| This is common for software where the people who take the
| decision which software to buy are far removed from the people
| who are going to use it. No product manager cared about this,
| because this feature needs to work only well enough for a sales
| pitch, if even that.
| josephcsible wrote:
| > software where the people who take the decision which
| software to buy are far removed from the people who are going
| to use it
|
| As far as I'm concerned, that's the definition of enterprise
| software.
| bri3d wrote:
| 100% agree with the buyer not being the end-user.
|
| As long as the product supports the needs of the buyer
| (administration and reporting, rules engine for product
| selection, etc.), the needs of the end-user can be neglected.
| HRIS software (PeopleSoft, SuccessFactors, Workday, etc.) is
| the same way. The deals keep close and the checks keep coming
| in.
|
| I don't think it's fair to say with a lot of this software that
| no one cares, though, just that the business as a whole adds up
| to a poor frontline experience.
|
| It would surprise me exactly 0% to learn that there was a whole
| "improve the Concur UX for frontline users" team who repeatedly
| get their feature asks deprioritized in favor of something
| needed to close a deal.
|
| And, also consider that when it comes to these sorts of big
| enterprise products, many are drowning under 20+ years of
| trying to support every bizarre customized customer corner
| case, third-party integration, and often with no ability to
| deprecate an old feature. Perhaps adding sort capability breaks
| some arcane customer scripting functionality added ten years
| ago which is poorly understood, but cannot be removed due to a
| clause in the MSA.
| rch wrote:
| More likely half a dozen product managers worked with a massive
| contractor as part of a corporate "digital transformation"
| initiative, and nobody thought to include the exact logic that
| this control would need to implement when it was finally being
| worked on two years after the spec and timeline was agreed to.
| lepus wrote:
| Concur's backend is typical of a slow moving industry that works
| with old awkward systems like airlines. It's a shitshow of
| business logic and 20 year old legacy code that would be a long
| expensive nightmare to rewrite for little actual profit so no
| manager would ever approve of such an endeavor. I wouldn't be
| surprised if there was a mess of queries involved with this
| search such that trying to do a real sort of the results would
| require a significant degree of rewriting and touching scary code
| with huge amounts of bureaucratic review in order to be DOD
| compliant, so it gets labeled as "good enough" even if the
| current state drives some developers crazy.
| josephg wrote:
| They need to call a sort function. It can happen in the client,
| because the data set is small. It should have happened when the
| app was first written, at which time they weren't maintaining
| legacy code - they were writing a UI from scratch and could
| make changes easily. Sort functions are built in to every
| programming language I've ever used.
|
| I agree with the author. There's no reason for it to be like
| this but incompetence - either at an individual level, system
| level or both.
| the_sleaze_ wrote:
| I used to work in a system where seemingly trivial sort()s
| would break the entire stack.
|
| It is entirely plausible that a sort is nontrivial.
| teemab wrote:
| It's also very possible this list is configured by the IT
| department that purchased Concur. If this list is always set by
| purchaser configuration, not sorting kind of makes.
___________________________________________________________________
(page generated 2022-12-04 23:00 UTC)